论点是有一个实用工具来解开这些使给定:的Python 3:摊开从给定一个Python的元组<code>t = v1, v2, v3</code>元组
def foo(v1,v2,v3): pass
取而代之的是:
foo(t[0],t[1],t[2])
你可以这样做:
foo(unpack(t))
我想知道任何这样的工具可用于元组和/或列表。
真诚的感谢。
论点是有一个实用工具来解开这些使给定:的Python 3:摊开从给定一个Python的元组<code>t = v1, v2, v3</code>元组
def foo(v1,v2,v3): pass
取而代之的是:
foo(t[0],t[1],t[2])
你可以这样做:
foo(unpack(t))
我想知道任何这样的工具可用于元组和/或列表。
真诚的感谢。
没错。您可以使用拆包经营者('*'
)
foo(*t)
注意这个作品,如果t是list
,tuple
,甚至发电机
有将参数传递给函数与关键字类似的方法使用操作者**
上映射对象(通常是字典):
def foo(key=None,foo=None):
pass #...
foo(**{key:1,foo:2})
使用*args
参数传递:
foo(*t)
演示:
>>> def foo(v1, v2, v3):
... print(v1, v2, v3)
...
>>> t = 1, 2, 3
>>> foo(*t)
1 2 3
Unpack参数列表:
foo(*(v1, v2, v3))