函数的定义
python中使用def来定义一个函数
def 函数名 (形参):
函数体
return 返回值
函数必须先定义在调用,定义函数时参数与返回值可以省略
函数体执行到return语句后就会返回,不会执行之后的语句
没有返回值的函数默认返回None字面量,类型为NoneType
None可以用于声明无初始内容的变量
None 默认代表Flase,可用于if判断
name = None
变量的作用域
全局变量:在函数体内外都可以生效的变量
局部变量:只可以在函数体内部生效的变量
关键字global,可以将局部变量声明为全局变量
函数的多返回值
一个函数体内只会有一条return语句生效,如何返回多个返回值呢?
def test_return():
return 1, 2, 3
x,y,z = test_return()
通过一条return返回多个函数值
函数的多种传参方式
位置传参
关键字传参
缺省传参
不定长传参
这种传参,参数数目不固定。常见两类:1.位置传递 通过*形参定义,多个参数会被存储在元组内 2.关键字传递 通过**形参定义,多个参数会被存储在字典内
lambda匿名函数
匿名函数没有名字,只能临时调用一次
lambda定义匿名函数
def add ( x, y):
return x+y
def test(algorithm):
result = algorithm(1 ,2)
return result
test(add)
test(lambda x, y : x + y)
其两种结果相同,可以看到匿名函数具有简洁的特点,但只能临时使用一次