英文:
python add a list of variables as positional arguments for functions
问题
我有一个需要传递给几个函数的变量列表,这些函数需要相同数量的参数。
a = 1
b = 'hello'
c = 1.9
args = (a, b, c)
op = func_a(args) if <cond1> else func_b(args)
def func_a(a, b, c):
...
def func_b(a, b, c):
...
但是将这个作为元组发送,元组会被设置为参数 a
,而函数还期望参数 b
和 c
。
我如何分别将这个元组传递为 a
、b
和 c
?
英文:
I have a list of variables that need to be passed in a couple of functions that take the same number of arguments.
a = 1
b = 'hello'
c = 1.9
args = (a, b, c)
op = func_a(args) if <cond1> else func_b(args)
def func_a(a, b, c):
...
def func_b(a, b, c):
...
But sending this as a tuple, the tuple is set to arg a
and the function expects args b
and c
as well.
How can I pass these tuple as a
, b
, and c
respectively?
答案1
得分: 1
使用 *
来解包元组:
op = func_a(*args) if <cond1> else func_b(*args)
这将解包元组并将参数作为单独的参数传递。
英文:
Use *
to unpack the tuple:
op = func_a(*args) if <cond1> else func_b(*args)
This will unpack the tuple and pass the parameters as separate arguments.
通过集体智慧和协作来改善编程学习和解决问题的方式。致力于成为全球开发者共同参与的知识库,让每个人都能够通过互相帮助和分享经验来进步。
评论