版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/u011978079/article/details/89322625
1、按位置传递,典型参数传递方式
def func(a,b,c):
print(a,b,c)
func(1,2,3)
#输出 1 2 3
2、参数名传递(关键字传递)
#参数名传递参数可以不按顺序传递
def func(a,b,c):
print(a,b,c)
func(10,c=30,b=20)
#输出 10 20 30
3、参数设置默认值
def func(a=10,b=20,c=30):
print(a,b,c)
func()
#输出 10 20 30
func(1,b=100)
#输出 1 100 30
4、包裹传递(*args/**kwargs)
在定义函数时,我们并不知道调用的时候会传递多少个参数,这时(*args/**kwargs)关键字参数来进行参数传很实用,在func参数列表中,所有参数被args/kwargs收集,根据位置合并成一个元组(tuple),注意添加*号。
def func(*args):
print(type(args))
print(args)
#参数必须放在默认参数后
def func(a,b,*args,**kwargs):
print(a,b,agrs,kwargs)
#示例
def func(a,b=2,*c,**d):
pint(a,b,c,d)
func(1,2,*(3,4),**{'e':10,'f':20})
#输出 1 2 (3,4) {'e':10,'f':20}
5、分解包裹传递参数
在函数中,可以将多个参数合并成一个参数,即将多个参数合并成一个元组,在传递元组对象名前添加*或**
#*args = (1,2,3,4)
def func(a,b,c,d):
print(a,b,c,d)
args=(1,2,3,4)
func(*args)
#输出 1 2 3 4