多个变量返回值,位置参数,关键字参数,缺省参数,不定长参数,匿名函数

本文介绍了Python中函数参数的使用,包括位置参数、关键字参数、缺省参数(默认参数)、不定长参数(位置不定长*args和关键字不定长**kwargs)以及如何使用函数作为其他函数的参数和lambda表达式创建匿名函数。

1、演示使用多个变量,接收多个返回值,返回值不受限制

2、位置参数:调用函数时函数根据函数定义的参数位置来传递参数

3、关键字参数:函数调用时通过“键=值”形式传递参数 作用:可以让函数更加清晰、容易使用,没有参数的顺序需求

4、 缺省参数,也叫默认参数,用于定义函数,为参数提供默认值,调用函数时可不传该默认参数的值( 注意:所有位置参数必须出现在默认参数前,包括函数定义和调用) 作用:当调用函数时没有传递参数,就会使用默认的缺省参数对应的值

5、不定长 - 位置不定长,*号,作为元组存在,形式参数一般命名为args

6、不定长 - 位置不定长,**号,关键字,组成字典,形式参数一般命名为kwargs

7、 定义函数,函数本身可以作为参数,传入另一个函数中进行使用的 将函数传入的作用在于:传入计算逻辑,而非传入数据

8、 lambda 定义匿名函数,无名称的匿名函数,只可临时使用一次 语法: lambda 传入参数:函数体(一行代码)


# 演示使用多个变量,接收多个返回值,返回值不受限制
def test_return():
    return 1,"hello",True
x,y,z = test_return()
print(x)
print(y)
print(z)

# 函数传参方式
# 使用方式上的不同,函数有4种常见的参数使用方式:
"""
位置参数
关键字参数
缺省参数
不定长参数
"""

def user_info(name,age,gender):
    print(f"姓名是:{name},年龄是:{age},性别是:{gender}")
# 位置参数:调用函数时函数根据函数定义的参数位置来传递参数
user_info('小明','21','男')
# 关键字参数:函数调用时通过“键=值”形式传递参数
# 作用:可以让函数更加清晰、容易使用,没有参数的顺序需求
user_info(name='小张',age=24,gender='女')
user_info(gender='女',name='小张',age=24)  # 关键字参数可以乱序
user_info('花花',gender='女',age=24)  #位置参数可以与关键字参数混用,但是位置参数必须是第一个
# 缺省参数,也叫默认参数,用于定义函数,为参数提供默认值,调用函数时可不传该默认参数的值(
# 注意:所有位置参数必须出现在默认参数前,包括函数定义和调用)
# 作用:当调用函数时没有传递参数,就会使用默认的缺省参数对应的值
def user_info(name,age,gender='男'):
    print(f"姓名是:{name},年龄是:{age},性别是:{gender}")
user_info('小天',20)
user_info('点点',21,'女')
#不定长 - 位置不定长,*号,作为元组存在,形式参数一般命名为args
def user_info(*args):
    print(f"args参数的类型是:{type(args)}\n内容是{args}")
user_info(1,2,3,'小明','男孩')


#不定长 - 位置不定长,**号,关键字,组成字典,形式参数一般命名为kwargs
def user_info(**kwargs):
    print(f"args参数的类型是:{type(kwargs)}\n内容是:{kwargs}")
user_info(name = "小明",age = 21,gender = '男',addr = '贵州')
print("--------------------")

# 定义函数,函数本身可以作为参数,传入另一个函数中进行使用的
# 将函数传入的作用在于:传入计算逻辑,而非传入数据

def test_func(computer):
    result = computer(1,2)
    print(f"computer的参数类型是:{type(computer)}")
    print(f"computer的计算结果是:{result}")
# 定义一个函数,准备作为参数传入另一个函数
def computer(x,y):
    return x + y
# 调用,并传入函数
test_func(computer)
print("------------")

# lambda 定义匿名函数,无名称的匿名函数,只可临时使用一次
# 语法: lambda 传入参数:函数体(一行代码)
def test_func(computer):
    result = computer(1,2)
    print(f"computer的参数类型是:{type(computer)}")
    print(f"computer的计算结果是:{result}")
test_func(lambda x,y : x + y)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值