函数形参为可变类型

def extend_list(val, lis=[]):
    lis.append(val)
    return lis

list1 = extend_list(10)
list2 = extend_list(123,[])
list3 = extend_list('a')

print(list1) # [10, 'a']
print(list2) # [123]
print(list3) # [10, 'a']
def fn(a, n={}):
    n[a] = 1
    return n

fn1 = fn('a')
fn2 = fn('b',{})
fn3 = fn('c')

print(fn1) # {'a': 1, 'c': 1}
print(fn2) # {'b': 1}
print(fn3) # {'a': 1, 'c': 1}

你可能感兴趣的:(函数形参为可变类型)