【发布时间】:2020-03-25 07:34:50
【问题描述】:
我想创建一个返回多个值的函数。但是,我可能需要多次运行它。所以我希望它能够使用自己的输出作为参数。
def return_double_and_triple(n1, n2):
return n1*2, n2*3
print(return_double_and_triple(4, 5))
Out[1]: (8, 15)
但是,我不能使用它两次:
print(return_double_and_triple(return_double_and_triple(4, 5)))
TypeError:return_double_and_triple() 缺少 1 个必需的位置参数:'n2' 预期输出:
Out[1]: (16, 45)
我希望能够根据需要在其自己的输出上调用此函数。 请注意这是一项虚假的任务,以了解其工作原理。不要建议返回双倍和三倍数字的替代方法。谢谢。
【问题讨论】:
-
将星号
*放在第一个函数调用旁边以解包参数:print(return_double_and_triple(*return_double_and_triple(4, 5))) -
太棒了,哇。你为什么不把它作为答案?你不想要积分吗?