我打开了我的 python 解释器,编码并运行了以下函数。
>>> def crazy_function(my_list=[]):
... my_list.append(0)
... return my_list
...
>>> crazy_function()
[0]
>>> crazy_function()
[0, 0]
>>> crazy_function()
[0, 0, 0]
>>> crazy_function()
[0, 0, 0, 0]
>>> crazy_function()
[0, 0, 0, 0, 0]
>>> crazy_function()
[0, 0, 0, 0, 0, 0]
>>> crazy_function()
[0, 0, 0, 0, 0, 0, 0]
>>>
到底是怎么回事?为什么函数返回的列表越调用函数越长?每次调用函数时不应该创建一个新的本地列表吗?