2016-05-12 48 views

回答

0

它被称为参数解包。如果你忽略它,那么它只会将由列表理解创建的列表作为一个参数提供给print函数。用星号作为单独的参数传递该列表中的每个项目。 考虑这个例子:

def my_func(arg1, arg2, arg3): 
    print('yay it worked') 

,然后用调用它:

my_func(*[1, 2, 3]) 

方式ARG1,这将是1,ARG2将是2和ARG3将3. 如果更改呼叫:

my_func([1, 2, 3]) 

然后您将列表传递给arg1,它会引发TypeError,因为它缺少两个位置参数。