python中的拆包和装包

针对python中的args和 **kwargs拆包和装包的说明
函数定义中的
args通常用来接受元组,列表等不定长参数,**kwargs用来接受关键字参数
下面看以下代码

"""python中的装包与拆包"""
def func(*args,**kwargs):
   """函数定义中的*args和**kwargs表示的是装包
   *args把数据装在元组中
   **kwargs把数据装在字典中,且**kwargs只能接受关键字参数
   """
   print("拆包前")
   print(args)
   #将*args中的元组进行拆包
   print("拆包后")
   print(*args)
   print("装包后的kwargs")
   print(kwargs)

n1=(1,2,3,45,6,7)
dic={"name":"jiajia","age":15}
func(*n1,**dic)#函数调用中在参数前面加上*或者是**表示拆包,将**拆成关键字参数

运行结果

拆包前
(1, 2, 3, 45, 6, 7)
拆包后
1 2 3 45 6 7
装包后的kwargs
{'name': 'jiajia', 'age': 15}

①在调用函数是,传入的一组元组或者列表前面加上args或者在字典前面加上**kwargs,表示的是拆包,将agrs拆成位置参数将**kwargs拆成关键字参数,比如,将{‘name’: ‘jiajia’, ‘age’: 15}拆成,name=“jiajia”,age=15传递为函数中的形参
②接着会在将拆包的数据作为实参传递给函数,函数会将位置参数装成一组元组或者列表,将关键字参数装成字典
③在函数中,如果使用了*args,则表示将函数形参中的装成的包继续进行拆包,比如将(1, 2, 3, 45, 6, 7)拆成:1,2,3,45,6,7这样

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值