我知道它会扩展函数参数,但是如果我在Python 2中尝试类似的方法,
x = [1,2,3]
print *x # SyntaxError: invalid syntax
print [*x] # SyntaxError: invalid syntax
所以看来我缺少*确切的功能?
答案 0 :(得分:3)
*
运算符将序列/可迭代元素(例如,列表或元组)中的元素解压缩为函数的位置参数
在python2上,print
是语句而不是函数。因此,从将来导入打印功能,以便您使用*
运算符将列表元素解包为参数
>>> from __future__ import print_function
>>> print (*x)
1 2 3
在python3上,print
是一个函数。因此,您可以直接使用*
运算符
>>> print (*x)
1 2 3