Python之函数(二)函数的动态参数

函数的动态参数

动态位置参数(*args 备注 args可以随意改,不是固定的)

def func(a,b,args):# args是万能(接受任意多个)的位置参数 *在函数定义的时候叫做聚合
print(a,b,args)# args接受 多个参数存储类型为元组
func(1,2,3,4,5)
结果为: 1 2 (3,4,5)

def func(a,b,args):#args是万能(接受任意多个)的位置参数 *在函数定义的时候叫做聚合
print(a,b,args)
func(1,2,3)
结果为: 1 2 (3,)

def func(a,b,args):#args是万能(接受任意多个)的位置参数 在函数定义的时候叫做聚合
print(a,b,
args)# * 打散
func(1,2,3,4)
结果为 1 2 3 4

优先级: 位置参数 >动态位置参数 > 默认参数

def func(a,b,args,c=1,d=2):
print(a,b,c,d,
args)
func(1,2,3,4,c=4)#如果要修改默认参数 必须参数名一致 否则改不了 默认参数的值
结果为1 2 4 2 3 4

动态关键参数(**kwargs 备注kwargs可随意修改 遵循变量命名)

def func(a,b,kwargs):# kwargs是万能(接受任意多个)关键字参数
print(a,b,kwargs)
func(1,2,c=1,d=2)# kwargs 格式要遵循a=1 实参不能跟 位置形参 名一致 否则冲突
结果为:1 2 {"c":1,"d":2}

def func(a,b,*args,c=1,d=2,**kwargs):
print(a,b,args,c,d,kwargs)# *kwargs --获取到字典的键
func(1,2,3,4,c=8,d=10,e="alex",f="wusir")
结果为:1 2 3 4 8 10 e f

总结

def func(*args,**kwargs):
print(args,kwargs)
a=[1,2,3,4,5,6]
b={"1":2,"3":4}
func(*a,**b)
结果为:1 2 3 4 5 6 1 3
列表 和字典 作为实参遍历

我们可以用这种形式 a 等价于遍历 分别传参给args
**b等价于 "1":2,"3":4

参数的优先级:位置参数>动态位置参数>默认参数(关键字参数)>动态关键字参数

1、万能传参:动态位置参数--动态关键字参数(最常用***)

2、位置参数--动态位置参数

3、动态位置参数--关键字参数--动态关键字参数

转载于:https://www.cnblogs.com/yhx003/p/11438538.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值