2019.03.21 可变参数-参数解包

是可变参数还是参数解包,取决于在形参位置还是实参位置、

 

1.*args将收集所有位置相关的参数,并放到一个元祖中,最后将这个元祖赋值给args

2.**kwargs指针对关键字参数

   这些关键字参数会放到一个相应的字典中,然后同样的赋值个kwargs

def demo(*args,**kwargs):
  print args,kwargs
       
       
demo()
"""
()
{}
"""


demo(1,2)
"""
(1,2)
{}
"""


demo(c='a',b='d')
"""
()
{'c': 'a', 'b': 'd'}
"""


demo(1,2,c='a',b='d')
"""
(1, 2)
{'c': 'a', 'b': 'd'}
"""
参数解包

1. *arg可以解包元组,而**kwarg则可以解包字典

def demo(a,b,c):
  print a,b,c
   
kwargs = {'a':1,'b':2,'c':3}
demo(**kwargs)
结果:1 2 3


args =(1,2,3)
demo(*args)
1 2 3


可变参数和参数解包区别
  1. 可变参数是在形参中,利用*,**来实现

  2. 参数解包是在实参中,利用*,**来实现

转载于:https://www.cnblogs.com/Py-king/p/10573082.html

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值