python编写函数注意事项总结


Posted in Python onMarch 29, 2021

1、编写注意

  • 给函数指定描述名。
  • 函数名称只包括小写字母和下划线。
  • 每一个函数都应该包含简要说明其功能的注释,注释应该紧跟在函数定义之后,并且采用文档字符串格式。

2、给形参指定默认值时,等号两侧不得有空格

def function_name(parameter_0, parameter_1='default value')

3、如果程序或模块包含多个函数,可以使用两个空行将相邻函数分开,这样更容易知道前一个函数在哪里结束,下一个函数从哪里开始。

function_name(value_0, parameter_1='value')

对于函数调用中的关键字实参,也应遵循所有import句子都应该放在文件开头。唯一的例外是,在文件开头使用注释来描述整个程序。

知识点扩展:

  1. 代码复用的第一步就是使用函数。
  2. 一个函数可以接受任何数量(包括0)的任何类型的值最为输入变量,并且返回任何数(包括0)的任何类型的结果。
  3. Python中的一切都是对象,包括字符串、数字、元祖、列表、字典和函数。
  4. 调用Python函数help()可以打印输出一个函数函数的参数列表和规范文档。如果仅仅是想要得到文档的字符串可以用doc。
  5. 可以把函数作为函数的参数,函数也可以作为列表、元组、集合、和字典的元素。函数名是不可变得,因此可以把函数用作字典的键。Python的函数式一级对象,也就是说,我们可以直接引用函数把函数当成参数传给其他函数,并通过表达式及if语句对其进行比较和判断。
  6. 闭包是一个可以由另一个函数动态生成的函数,并且可以改变和存储函数外创建的变量的值。(也可以说闭包是一个定义在某个作用域中的函数,这种函数引用了那个作用域里的变量。)
  7. Python使用特殊的规则来比较两个元组。它首先比较各元组中下标为0的对应元素。如果相等,再比较下标为1的对应元素,如果还是相等,那就继续比较下标为2的元素,一次类推。
  8. 在表达式中引用变量时,Python解释器将会按照如下顺序遍历各作用域:
  9. 给变量赋值时,规则有所不同。如果当前作用域内已经定义了这个变量,那么该变量就会具备新值。若是当前作用域内没有这个变量,Python则会把这次赋值视为对该变量的定义,而新定义的这个变量,其作用域就是包含赋值操作的这个函数。
  10. nonlocal语句。nonlocal清楚地表明如果在闭包中给该变量赋值,那么修改的其实是闭包外那个作用域的变量。但是,nonlocal的唯一限制是它不能延伸到模块级别,这个是为了防止它污染全局作用域。这个与global语句互补。global用来表示对该变量的赋值操作,将会直接修改作用域里的那个变量。
  11. 考虑用生成器改写直接返回列表的函数
  12. 在参数迭代时,要多加小心
Python 相关文章推荐
Python实例之wxpython中Frame使用方法
Jun 09 Python
Python装饰器用法实例总结
Feb 07 Python
简单了解python反射机制的一些知识
Jul 13 Python
PyQt5+Caffe+Opencv搭建人脸识别登录界面
Aug 28 Python
利用python Selenium实现自动登陆京东签到领金币功能
Oct 31 Python
Python3运算符常见用法分析
Feb 14 Python
Python中常用的高阶函数实例详解
Feb 21 Python
Python配置pip国内镜像源的实现
Aug 20 Python
Python ellipsis 的用法详解
Nov 20 Python
Python实现简单猜数字游戏
Feb 03 Python
python编程实现清理微信重复缓存文件
Nov 01 Python
详解pytorch创建tensor函数
Mar 22 Python
python基于tkinter制作无损音乐下载工具
Python requests库参数提交的注意事项总结
Python爬虫爬取全球疫情数据并存储到mysql数据库的步骤
Python爬虫数据的分类及json数据使用小结
Mar 29 #Python
python re模块和正则表达式
Mar 24 #Python
opencv实现图像几何变换
PyQt QMainWindow的使用示例
Mar 24 #Python
You might like
全国FM电台频率大全 - 22 重庆市
2020/03/11 无线电
2021年最新CPU天梯图
2021/03/04 数码科技
PHP 获取远程文件大小的3种解决方法
2013/07/11 PHP
Adnroid 微信内置浏览器清除缓存
2016/07/11 PHP
php计数排序算法的实现代码(附四个实例代码)
2020/03/31 PHP
jquery常用特效方法使用示例
2014/04/25 Javascript
jQuery 插件开发指南
2014/11/14 Javascript
jQuery实现高亮显示的方法
2015/03/10 Javascript
JavaScript内存管理介绍
2015/03/13 Javascript
JavaScript Sort 的一个错误用法示例
2015/03/20 Javascript
PHP+jQuery+Ajax+Mysql如何实现发表心情功能
2015/08/06 Javascript
JavaScript中字符串与Unicode编码互相转换的实现方法
2015/12/18 Javascript
JS实现一次性弹窗的方法【刷新后不弹出】
2016/12/26 Javascript
Angular整合zTree的示例代码
2018/01/24 Javascript
bootstrapTable+ajax加载数据 refresh更新数据
2018/08/31 Javascript
js实现input密码框显示/隐藏功能
2020/09/10 Javascript
Vue+Node实现的商城用户管理功能示例
2019/12/23 Javascript
Python里隐藏的“禅”
2014/06/16 Python
在Python程序中进行文件读取和写入操作的教程
2015/04/28 Python
Python安装使用命令行交互模块pexpect的基础教程
2016/05/12 Python
python 实现网上商城,转账,存取款等功能的信用卡系统
2016/07/15 Python
浅谈python装饰器探究与参数的领取
2017/12/01 Python
详解Python匿名函数(lambda函数)
2019/04/19 Python
Python CSV文件模块的使用案例分析
2019/12/21 Python
python把一个字符串切开的实例方法
2020/09/27 Python
.NET概念性的面试题
2012/02/29 面试题
幼儿教师思想汇报
2014/01/10 职场文书
网络工程师专家职业发展路线
2014/02/14 职场文书
2014年党支部学习材料
2014/05/19 职场文书
电子专业自荐信
2014/07/01 职场文书
创建绿色社区汇报材料
2014/08/22 职场文书
职业生涯规划书怎么写?
2014/09/14 职场文书
市贸粮局召开党的群众路线教育实践活动总结大会新闻稿
2014/10/21 职场文书
python开发人人对战的五子棋小游戏
2022/05/02 Python
Nginx的gzip相关介绍
2022/05/11 Servers
Debian11 Xfce终端光标的颜色怎么设置?
2022/08/14 数码科技