目录
-
函数参数:
- 必备参数 、关键字参数、 默认参数 、不定长参数、(必备参数包括关键词参数和位置参数)
- 位置参数、关键词参数、默认参数、
- 不定长参数:
你可能需要一个函数能处理比当初声明时更多的参数。这些参数叫做不定长参数。 语法如下:
def test(a,b,c,*tup_args,**dict_args):
print(a)
print(b)
print(c)
print(tup_args)
print(dict_args)
test(1,2,3,'a1','a2','a3',name = 'joe', age = 18)
注意:加了星号(*)的变量名会存放所有未命名的变量参数,输出是元祖形式。加了(**)会存放所有命名的变量参数,输出时字典形式。
-
函数变量的作用域:
全局变量和局部变量,从函数外面传入某个全局变量到函数内部,在函数内部进行更改这个变量。但是在函数外部该变量没有改变。需要在函数内部对传入的局部变量进行global全局声明。然后在函数内部改变该变量,函数外全局变量才能同时被改变。
-
匿名函数:
- 定义函数的过程中,没有给定名称的函数就叫做匿名函数;Python中使用lambda表达式来创建匿名函数。
- lambda 来创建匿名函数规则。
- ●lambda只是一个表达式,函数体比def简单很多。
- ●lambda的主体是一个表达式,而不是一个代码块,所以不能写太多的逻辑进去。
- ●lambda函数拥有自己的命名空间。
- ●lambda定义的函数的返回值就是表达式的返回值,不需要return语句块
- ●lambda表达式的主要应用场景就是赋值给变量、作为参数传入其它函数
- lambda匿名函数的表达式规则是:lambda 参数列表: 表达式
- 实例:
b = lambda x,y:x*2+y
print(b(1,2))
结果:
4