有没有办法将 Python 元组扩展为函数 - 作为实际参数?
例如,这里expand()有魔法:
expand()
some_tuple = (1, "foo", "bar") def myfun(number, str1, str2): return (number * 2, str1 + str2, str2 + str1) myfun(expand(some_tuple)) # (2, "foobar", "barfoo")
我知道可以定义myfun为myfun((a, b, c)),但当然可能有遗留代码。谢谢
myfun
myfun((a, b, c))
myfun(*some_tuple)完全符合您的要求。运算符只需解*包元组(或任何可迭代的)并将它们作为位置参数传递给函数。阅读有关解包参数的更多信息。
myfun(*some_tuple)
*