函数介绍
- 函数是组织好的,可重复使用的,用来实现特定功能的代码段,如前面的type()、input()等都是Python的内置函数。
- 函数可以提高程序的复用性,减少重复性代码,提高开发效率
函数的定义和调用
1 | # 定义函数 |
注意:
- 参数如果不需要,可以省略
- 返回值如果不需要,可以省略
- 函数必须先定义后使用
函数的参数
传入参数的功能是:在函数进行计算的时候,接受外部(调用时)提供的数据
语法解析:
1 | # 定义函数 |
- 函数定义中,提供的x和y,称之为:形式参数(形参),表示函数声明将要使用2个参数,参数直接使用逗号进行分隔
- 函数调用中,提供的5和6,称之为:实际参数(实参),表示函数执行时真正使用的参数值,传入的时候,按照顺序传入数据,使用逗号分隔
- 传入参数的数量是不受限制的,可以没有,也可以有多个
函数的返回值
返回值的定义
所谓返回值,就是程序中函数完成事情后,最后给调用者的结果
1 | def 函数(参数...): |
如上述代码,变量就能接收到函数的返回值
语法就是:通过return关键字,就能向调用者返回数据
注意:函数体在遇到return后就结束了,所以写在return后的代码不会执行
None类型
Python中有一个特殊的字面量:None,其类型是:<class ‘NoneType’>,无返回值的函数,实际上就是返回了:None这个字面量
应用场景:
- 用在函数无返回值上
- 用在if判断上,在if判断中,None等同于False,一般用在函数中主动返回None,配合if判断做出相关处理
- 在声明无内容的变量上,定义变量时,但暂时不需要变量有具体值,可以用None来代替
None在if中的应用
1 | def check_age(age): |
函数说明文档
顾名思义,就是在函数中写注释函数进行说明解释,帮助更好理解函数的功能
函数的嵌套调用
所谓函数嵌套调用就是指在一个函数里面调用了另外一个函数,如下所示
1 | def fun_b(): |
变量作用域
- 变量主要分为局部变量和全局变量
- 局部变量:定义在函数体内的局部变量,即只在函数体内部生效
- 全局变量:在函数体内、外都能生效的变量
- 在函数内部定义一个与全局变量同名的变量,并对其运算,对全局变量无影响
- 在函数内部声明全局变量,需要使用global关键字