def test_fun(num, re_dict={}):
print(re_dict)
return re_dict
adict=test_fun(1)
adict.update({'a':1})
test_fun(2)
输出:
{}
{‘a’: 1}
如果没有赋值操作,那么不管调用多少次test_fun函数,默认参数都是唯一的对象,可能会被其它调用无意修改。
def test_fun(num, re_dict={}):
print(re_dict)
return re_dict
adict=test_fun(1)
adict.update({'a':1})
test_fun(2)
输出:
{}
{‘a’: 1}
如果没有赋值操作,那么不管调用多少次test_fun函数,默认参数都是唯一的对象,可能会被其它调用无意修改。