初始化功能中的默认参数

时间:2020-08-12 19:45:43

标签: python

def f(a, L=[]):
    L.append(a)
    return L
print(f(1))
print(f(2))
print(f(3))

我不明白为什么在上述情况下列表L只初始化一次,而在下面的情况下每次调用函数时都初始化列表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))

0 个答案:

没有答案