函数参数传递类型 :
" 缺省参数 " 又称为 " 默认参数 " , 在 定义函数时 , 可以为参数设置一个默认值 ,
在调用函数时 , 可以选择 传入该 缺省参数 , 也可以选择 不传入 缺省参数 ,
设置 的 缺省参数 , 在定义时 , 必须放在 形参列表的最后 ;
代码示例 :
"""
函数多返回值 代码示例
"""
def info(name, age=16):
print(f"{name} is {age} years old")
# 缺省参数 - 与关键字参数结合使用
# Jerry is 16 years old
info(name='Jerry')
# 缺省参数 - 与位置参数结合使用
# Trump is 16 years old
info('Trump')
# 缺省参数 - 传入缺省参数
# Joe is 21 years old
info('Joe', age=21)
执行结果 :
Jerry is 16 years old
Trump is 16 years old
Joe is 21 years old
" 不定长参数 " 又称为 可变参数 , 在 定义函数 时 , 不确定 调用时会传递多少个参数 , 就使用 不定长参数 ;
在 函数调用时 , 不定长参数 , 可以传入 若干 个参数 ;
不定长参数 又分为 两种类型 :
通过位置传递的不定长参数语法 :
def 函数名(*args)
# 函数体
*args 就是不定长参数 , 所有传入的参数 , 都会被 args 参数接收 , 这些参数都会被封装到一个 元组 tuple 中 ;
args 可以理解为 元组 数据容器 类型 ;
注意 : 通过位置传递的 不定长参数 前面有一个 * 符号 ;
代码示例 :
"""
函数多返回值 代码示例
"""
def info(*args):
print(args)
# 不定长参数 - 位置传递参数
# ('Tom',)
info('Tom')
# 不定长参数 - 位置传递参数
# ('Trump', 80)
info('Trump', 80)
执行结果 :
('Tom',)
('Trump', 80)
通过关键字传递的不定长参数语法 :
def 函数名(**args)
# 函数体
**args 就是通过关键字传递的不定长参数 , 所有传入的参数 , 都是由键值对组成的 , 这些键值对都会被封装到字典中 ;
args 可以理解为 字典 数据容器 类型 ;
注意 : 通过位置传递的 不定长参数 前面有两个 * 符号 ;
代码示例 :
"""
函数多返回值 代码示例
"""
def info(**args):
print(args)
# 不定长参数 - 关键字传递参数
# {'name': 'Tom', 'age': 18}
info(name='Tom', age=18)
执行结果 :
{'name': 'Tom', 'age': 18}