从外部函数调用元组作为另一个函数中的双变量

时间:2014-10-20 17:05:46

标签: python function variables python-3.x tuples

我遇到的问题似乎无法在我的算法中解决。

我们说我有:

func1(x)

返回一个2元素元组,我也有

func2(y,z)

我想用那个元组。但每次我尝试在function2上将其称为

func2(func1)

我收到错误"缺少1个必需的位置参数:"因为函数接收元组为:

func2((tuple1st_element, tuple2nd_element),) 

而不是

func2(tuple1st_element, tuple2nd_element) 

我怎样才能做到后者呢?

1 个答案:

答案 0 :(得分:2)

使用* argument unpacking syntax

func2(*func1())

以下是演示:

>>> def func1():
...     return 1, 2
...
>>> def func2(a, b):
...     return a + b
...
>>> func2(*func1())
3
>>>

或者,简单来说,这样做:

func(*(1, 2))

相当于:

func(1, 2)