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封装对象实现时间效果
Apr 23 Python
分析Python中设计模式之Decorator装饰器模式的要点
Mar 02 Python
基于python中staticmethod和classmethod的区别(详解)
Oct 24 Python
关于反爬虫的一些简单总结
Dec 13 Python
利用Python2下载单张图片与爬取网页图片实例代码
Dec 25 Python
Python cookbook(数据结构与算法)将多个映射合并为单个映射的方法
Apr 19 Python
Python利用Django如何写restful api接口详解
Jun 08 Python
Python检测数据类型的方法总结
May 20 Python
python3 Scrapy爬虫框架ip代理配置的方法
Jan 17 Python
python数据库操作mysql:pymysql、sqlalchemy常见用法详解
Mar 30 Python
Tensorflow实现将标签变为one-hot形式
May 22 Python
python调用ffmpeg命令行工具便捷操作视频示例实现过程
Nov 01 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
PHP文件操作实现代码分享
2011/09/01 PHP
php中获得视频时间总长度的另一种方法
2011/09/15 PHP
php模拟服务器实现autoindex效果的方法
2015/03/10 PHP
php遍历类中包含的所有元素的方法
2015/05/12 PHP
PHP编写daemon process 实例详解
2016/11/13 PHP
js 判断checkbox是否选中的操作方法
2012/11/09 Javascript
js处理自己不能定义二维数组的方法详解
2014/03/03 Javascript
关于javascript模块加载技术的一些思考
2014/11/28 Javascript
Jquery动态添加输入框的方法
2015/05/29 Javascript
Web打印解决方案之普通报表打印功能
2016/08/29 Javascript
JavaScript字符集编码与解码详谈
2017/02/02 Javascript
angular中ui calendar的一些使用心得(推荐)
2017/11/03 Javascript
react router4+redux实现路由权限控制的方法
2018/05/03 Javascript
使用node.js实现微信小程序实时聊天功能
2018/08/13 Javascript
Vuex 使用 v-model 配合 state的方法
2018/11/13 Javascript
ES6入门教程之let、const的使用方法
2019/04/13 Javascript
详解一次Vue低版本安卓白屏问题的解决过程
2019/05/30 Javascript
vue滚动插件better-scroll使用详解
2019/10/18 Javascript
JavaScript接口实现方法实例分析
2020/05/16 Javascript
详解Python中dict与set的使用
2015/08/10 Python
使用Python编写简单的端口扫描器的实例分享
2015/12/18 Python
详细介绍Python的鸭子类型
2016/09/12 Python
Python实现删除文件中含“指定内容”的行示例
2017/06/09 Python
python 将有序数组转换为二叉树的方法
2019/03/26 Python
班级聚会策划书
2014/01/16 职场文书
机械操作工岗位职责
2014/08/08 职场文书
中级会计大学生职业生涯规划书
2014/09/16 职场文书
2014党员批评和自我批评思想汇报
2014/09/21 职场文书
县政府领导班子“四风”方面突出问题整改措施
2014/09/23 职场文书
乡镇干部党的群众路线教育实践活动个人对照检查材料
2014/09/24 职场文书
公安机关纪律作风整顿剖析
2014/10/10 职场文书
小学五一劳动节活动总结
2015/02/09 职场文书
教师年终个人总结
2015/02/11 职场文书
2015年建党94周年演讲稿
2015/03/19 职场文书
企业战略合作意向书
2015/05/08 职场文书
2015年幼儿园安全工作总结
2015/05/12 职场文书