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内置的HTTP协议服务器SimpleHTTPServer使用指南
Mar 30 Python
简单了解什么是神经网络
Dec 23 Python
Python实现求一个集合所有子集的示例
May 04 Python
Python subprocess模块常见用法分析
Jun 12 Python
python绘制散点图并标记序号的方法
Dec 11 Python
Python3.4学习笔记之常用操作符,条件分支和循环用法示例
Mar 01 Python
Python 读取串口数据,动态绘图的示例
Jul 02 Python
python使用minimax算法实现五子棋
Jul 29 Python
python批量处理文件或文件夹
Jul 28 Python
Python处理mysql特殊字符的问题
Mar 02 Python
Python实现随机生成迷宫并自动寻路
Jun 13 Python
python代码实现备忘录案例讲解
Jul 26 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
基于PHP5魔术常量与魔术方法的详解
2013/06/13 PHP
destoon之一键登录设置
2014/06/21 PHP
thinkphp连贯操作实例分析
2014/11/22 PHP
PHP二分查找算法示例【递归与非递归方法】
2016/09/29 PHP
prototype1.4中文手册
2006/09/22 Javascript
jQuery拖拽 & 弹出层 介绍与示例
2013/12/27 Javascript
jQuery实现Tab选项卡切换效果简单演示
2015/11/23 Javascript
探究Javascript模板引擎mustache.js使用方法
2016/01/26 Javascript
js实现下拉框效果(select)
2017/03/28 Javascript
Angular中点击li标签实现更改颜色的核心代码
2017/12/08 Javascript
vue2.0 移动端实现下拉刷新和上拉加载更多的示例
2018/04/23 Javascript
vue组件开发之用户无限添加自定义填写表单的方法
2018/08/28 Javascript
微信小程序功能之全屏滚动效果的实现代码
2018/11/22 Javascript
压缩Vue.js打包后的体积方法总结(Vue.js打包后体积过大问题)
2020/02/03 Javascript
实现vuex原理的示例
2020/10/21 Javascript
Python实现的简单发送邮件脚本分享
2014/11/07 Python
Python读取环境变量的方法和自定义类分享
2014/11/22 Python
python检查序列seq是否含有aset中项的方法
2015/06/30 Python
python调用tcpdump抓包过滤的方法
2018/07/18 Python
python中reader的next用法
2018/07/24 Python
用Python读取几十万行文本数据
2018/12/24 Python
Python下简易的单例模式详解
2019/04/08 Python
numpy创建单位矩阵和对角矩阵的实例
2019/11/29 Python
使用OpenCV对车道进行实时检测的实现示例代码
2020/06/19 Python
LivingSocial爱尔兰:爱尔兰本地优惠
2018/08/10 全球购物
生物技术专业研究生自荐信
2013/09/22 职场文书
运动会入场解说词300字
2014/01/25 职场文书
创建青年文明号材料
2014/05/09 职场文书
财务会计专业求职信
2014/06/09 职场文书
中学生关于梦想的演讲稿
2014/08/22 职场文书
2014党员学习兰辉先进事迹思想汇报
2014/09/17 职场文书
2014年教务处工作总结
2014/12/03 职场文书
刑事上诉状(量刑过重)
2015/05/23 职场文书
教师节大会主持词
2015/07/06 职场文书
周末问候语大全
2015/11/10 职场文书
PyTorch 实现L2正则化以及Dropout的操作
2021/05/27 Python