一、不定长参数
语法一:
def 函数名(*var): 函数体
加了星号的参数会以元组(tuple)的形式导入,存放所有未命名的变量参数
例:
# 定义函数 def demo(*var): print(var) #调用函数 demo(1,2,3)
输出结果如下:
(1, 2, 3)
如果在函数调用时没有指定参数,它就是一个空元组。可以不向函数传递未命名的变量。
语法二:
def 函数名(**var): 函数体
加了两个星号的参数会以字典的形式导入。
例:
# 定义函数 def demo(**var): print(var) #调用函数 demo(a=1,b=2,c=3)
输出结果如下:
{'a': 1, 'b': 2, 'c': 3}
二、匿名函数
python 使用 lambda 来创建匿名函数。
- lambda 只是一个表达式,函数体比 def 简单很多。
- lambda的主体是一个表达式,而不是一个代码块。仅仅能在lambda表达式中封装有限的逻辑进去。
- lambda 函数拥有自己的命名空间,且不能访问自己参数列表之外或全局命名空间里的参数。
语法:
lambda [arg1 [,arg2,…,argn]]:expression
例:
#定义匿名函数 sum = lambda a,b:print(a+b) #调用函数 sum(2,2)
输出结果如下:
4
三、return语句
return [表达式] 语句用于退出函数,选择性地向调用方返回一个表达式。不带参数值的return语句返回None。
例:
#定义函数 def demo(a,b): sum = a + b return sum #调用函数 total = demo(5,10) print(total)
输出结果如下:
15