为什么默认和非默认参数可以在*之后自由混合?

时间:2014-08-27 10:22:27

标签: python python-3.x

在函数参数列表中,在带有默认值的参数

之后,不会出现没有默认值的参数
def func(a, b=2, c, d=4, e): .... ERROR

除非这是在*之后:

def func(a, b=2, *, c, d=4, e): .... OK

为什么在*之后的默认参数之后允许非默认参数?

1 个答案:

答案 0 :(得分:0)

func(2, 2, 2, 2)

在你的第一个例子中,这意味着什么?