嗨,我是 python 新手。有人可以解释以下两段代码如何给出不同的输出吗?每次调用函数时都会定义函数吗?
def f(a, L=[]):
L.append(a)
return L
def f(a, L=None):
if L is None:
L = []
L.append(a)
return L
在运行中
print f(1)
print f(2)
print f(3)
我分别得到这些输出
[1]
[1, 2]
[1, 2, 3]
[1]
[2]
[3]