笔记:Python 默认参数必须指向不变对象

学习记录

 >>> def add_end(L=[]):
L.append('END')
return L >>> add_end()
['END'] >>> # 但是再次调用 add_end() 时,结果就不对了
>>> add_end()
['END', 'END']
>>> add_end()
['END', 'END', 'END']

所以默认参数改为 None 就可以解决这个坑。

04-26 10:28