首页 > 代码库 > 关于python的函数的*和**参数:
关于python的函数的*和**参数:
1.将足够的参数解包以后传递给函数:
>def f(p1, p2, p3, p4):
> print p1+p2+p3+p4
>
>li = [1, 2, 3, 4]
>f(*li)
10
>
>tu = (1, 2, 3, 4)
>f(*tu)
10
>
>di = {‘p1‘:1, ‘p2‘:2, ‘p3‘:3, ‘p4‘:4}
>f(**di)
>10
2.使用封包的方法访问多余的参数
>>> def funct(*para, **para_dict):
... print para
... print para_dict
...
>>> funct(1,2,3,4,x=5,y=6,z=7)
(1, 2, 3, 4)
{‘y‘: 6, ‘x‘: 5, ‘z‘: 7}
>>> funct(1,x=5,y=6,z=7)
(1,)
{‘y‘: 6, ‘x‘: 5, ‘z‘: 7}
将多余的位置参数封包入para,将多余的关键字参数封包入para_dict,前者是一个序列(明确一点:元组tuple),后者是一个字典。
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。