# 函数的多种参数
# 使用方式的不同,函数有4中常见参数
# 位置参数
# 关键字参数
# 缺省参数
# 不定长参数
# 1.位置参数: 根据函数定义的参数位置来传递参数
# 传递的参数和定义的参数的顺序及个数必须一致
def user_info(name,age,gender):
print(f"您的名字是:{name},年龄是:{age},性别是:{gender}")
user_info('Tome',20,'男')
# 2.关键字参数: 调用函数时,通过“键=值”形式传参
# 作用:可以让函数更加清晰、容易使用,同时 也清除了参数的顺序需求
# 注意! 函数调用时,如果有位置参数时,位置参数必须在关键字参数的前面,但关键字参数职级不存在先后顺序。
user_info(name="臭八十的",age=26,gender="女")
user_info(age=26,gender="女",name="臭八十的") # 关键字传参,可以乱序
user_info("臭八十的",gender="男",age=26) # 关键字和位置参数都有时,位置参数要在前面
# 3.缺省参数: 默认参数,定义时设定默认值,调用函数时不能穿如该默认参数的值。
# 注意!所有位置参数必须在默认参数前面,包括函数定义和调用。
# 当调用函数时没有传递参数,就会使用默认是用缺省参数的对应值
# 函数调用时,如果为缺省参数传入值,则修改默认参数,否则使用默认值
def user_info(name,age,gender="男"): # 设置的默认值必须在最后
print(f"您的名字是:{name},年龄是:{age},性别是:{gender}")
user_info("狗八蛋",age= 25) # 默认gender为男
user_info("臭狗狗",15,gender = "女")
# 4.不定长参数 : 可变参数,用于不确定调用时会传递多少个参数(不传参数也可以)
# 作用:当调用函数时,不确定参数个数时,可以使用不定长参数。
# a.位置传递不定长: def user_info(*args)
# 不定长定义的形式参数会作为元组存在,接受不定长数量的参数传入
def user_info(*args):
print(f"args的类型是:{type(args)},内容是:{args}") # args 是一个元组,传入的参数是元组的元素
user_info("葫芦娃",123,"abc","ABC")
# b.关键字不定长: def user_info(**kwargs)
# kwargs 是键值对,传入参数必须是key=value形似,后形成是一个字典
def user_info(**kwargs):
print(f"kwargs的类型是:{type(kwargs)},内容是:{kwargs}") # kwargs 是一个字典,传入的参数是键值对
user_info(name=100,age=100,gender="男",love = "踢毽子")
运行结果:


被折叠的 条评论
为什么被折叠?



