7.1 函数多返回值
def test_return():
return 1, 2, 3
x,y,z = test_return()
print(x) #1
print(y) #2
print(z) #3
7.2 函数多种传参方式
def user_info(name, age, gender):
print(f"姓名是 {name},年龄是 {age},性别是 {gender}")
# 位置参数,默认使用形式
user_info("张三", 23, "男")
# 关键字参数
user_info(age=25, name="李四", gender='女')
# 缺省参数
def user_info(name, age, gender='男'):
print(f"姓名是 {name},年龄是 {age},性别是 {gender}")
user_info("小天", 22)
user_info("小天", 22, gender='女')
# 不定长 位置不定长 *
def user_info(*args):
print(f"args的参数的类型是 {type(args)}, 内容是{args}")
user_info(22, 'zhangsan') # args的参数的类型是 <class 'tuple'>, 内容是(22, 'zhangsan')
# 不定长 关键字不定长 **
def user_info(**kwargs):
print(f"args的参数的类型是 {type(kwargs)}, 内容是{kwargs}")
user_info(name='zhangsan', age=25, gender='女', addr='云南') #args的参数的类型是 <class 'dict'>, 内容是{'name': 'zhangsan', 'age': 25, 'gender': '女', 'addr': '云南'}
7.3 匿名函数
7.3.1 函数作为参数传递
def test_fun(add):
res = add(1, 2)
return res
def add(x, y):
return x + y
res = test_fun(add)
print(res) # 3
7.3.2 Lambda匿名函数
def test_func(add):
res = add(1, 3)
print(res)
test_func(lambda x, y: x + y) # 4