将参数列表传递给 Python 函数
Passing a list of parameters into a Python function
如何将未知数量的参数传递给函数?我有一个按以下方式定义的函数
def func(x, *p):
return ...
我正在尝试传递一个值列表以用作参数。我尝试使用列表和元组,但函数始终 returns 为零。有人有什么建议吗?
谢谢
将值作为逗号分隔值传递
>>> def func(x, *p): # p is stored as tuple
... print "x =",x
... for i in p:
... print i
... return p
...
>>> print func(1,2,3,4) # x value 1, p takes the rest
x = 1
2
3
4
(2,3,4) # returns p as a tuple
您可以通过阅读 docs
了解更多信息
some_list = ["some", "values", "in", "a", "list", ]
func(*some_list)
这相当于:
func("some", "values", "in", "a", "list")
固定的 x
参数可能需要考虑一下:
func(5, *some_list)
...等同于:
func(5, "some", "values", "in", "a", "list")
如果您没有为 x
(上例中的 5
)指定值,则 some_list
的第一个值将作为 x
参数
如何将未知数量的参数传递给函数?我有一个按以下方式定义的函数
def func(x, *p):
return ...
我正在尝试传递一个值列表以用作参数。我尝试使用列表和元组,但函数始终 returns 为零。有人有什么建议吗? 谢谢
将值作为逗号分隔值传递
>>> def func(x, *p): # p is stored as tuple
... print "x =",x
... for i in p:
... print i
... return p
...
>>> print func(1,2,3,4) # x value 1, p takes the rest
x = 1
2
3
4
(2,3,4) # returns p as a tuple
您可以通过阅读 docs
了解更多信息some_list = ["some", "values", "in", "a", "list", ]
func(*some_list)
这相当于:
func("some", "values", "in", "a", "list")
固定的 x
参数可能需要考虑一下:
func(5, *some_list)
...等同于:
func(5, "some", "values", "in", "a", "list")
如果您没有为 x
(上例中的 5
)指定值,则 some_list
的第一个值将作为 x
参数