- 函数多返回值
- 函数多种传参方式
- 匿名函数
- 函数多返回值
知道函数如何返回多个返回值
按照返回值的顺序,写对应顺序的多个变量接收即可变量之间用逗号隔开
支持不同类型的数据return
"""
演示使用多个变量,接收多个返回值
"""
def test():
return 1,2,3
x,y,z=test()
print(x)
print(y)
print(z)
- 函数多种传参方式
掌握位置参数;调用函数时根据函数定义的参数位置来传递参数
掌握关键字参数
关键字参数:函数调用时通过“键=值”形式传递参数:作用:可以让函数更加清晰、容易使用,同时也清除了参数的顺序需求
函数调用时,如果有位置参数时,位置参数必须在关键字参数的前面,但关键字参数之间不存在先后顺序
掌握不定长参数了.
不定长参数:不定长参数也叫可变参数.用于不确定调用的时候会传递多少个参数(不传参也可以)的场景,作用:当调用函数时不确定参数个数时,可以使用不定长参数
注意:
传进的所有参数都会被args变量收集,它会根据传进参数的位置合并为一个元组(tuple),args是元组类型,这就是位置传递
注意:
参数是“键=值”形式的形式的情况下,所有的“键=值”都会被kwargs接受,同时会根据“键=值”组成字典.
掌握缺省参数
缺省参数:缺省参数也叫默认参数,用于定义函数,为参数提供默认值,调用函数时可不传该默认参数的值(注意:所有位置参数必须出现在默认参数前,包括函数定义和调用)作用:当调用函数时没有传递参数,就会使用默认是用缺省参数对应的值
"""
关键字传参
"""
def test(name,age,gender):
print(f"姓名是{name},年龄是:{age},性别是:{gender}")
test("lkx",22,"男")
#位置参数-默认使用形式
test(name='lkx',age=22,gender='男')
test('lkx',age=22,gender='男')
#函数调用时,如果有位置参数时,位置参数必须在关键字参数的前面,但关键字参数之间不存在先后顺序
# 关键字参数
#缺省参数(默认值)
def test(name,age,gender='男'):
print(f"姓名是{name},年龄是:{age},性别是:{gender}")
test("kdx",18)
test("kdx",18,"女")
#不定长-位置不定长,*号
def test4(*args):
print(f"agrs的内容是:{args},其中的类型是:{type(args)}")
test4(1,2,3,'lkx')
#不定长-关键字不定长,** 号
def test5(**kwargs):
print(f"kwagrs的内容是:{kwargs},其中的类型是:{type(kwargs)}")
test5(name='lkx',age=18,gender='男')
- 匿名函数
函数作为参数传递
掌握函数作为参数传递
计算逻辑的传递,而非数据的传递
laMbda匿名 函数
函数的定义中
det关键字,可以定义带有名称的函数lambda关键字,可以定义匿名函数(无名称)有名称的函数,可以基于名称重复使用无名称的匿名函数,只可临时使用一次。
"""
演示函数传递
"""
#定义一个函数,接收另一个函数作为传入参数
def test(test2):
result=test2(1,2)
print(type(test2))
print(f"计算结果:{result}")
def test2(x,y):
return x+y
test(test2)
#定义一个函数,准备作为参数传入另一个函数
# 调用,并传入函数
匿名函数定义语法:
l ambda传入参数:函数体(一行代码)
lambda 是关键字,表示定义匿名函数
传入参数表示匿名函数的形式参数,如:xy表示接收2个形式参数函数体,就是函数的执行逻辑,要注意:只能写一行,无法写多行代码
"""
演示lambda
"""
def test(test2):
result=test2(1,2)
print(type(test2))
print(f"计算结果:{result}")
test(lambda x,y:x+y)