可能重複:
「Least Astonishment」 in Python: The Mutable Default Argument易變的默認參數
我寫了下面的Python程序:
#!/usr/bin/env python
def bug(numbers = []):
numbers.append(1)
return numbers
print bug()
print bug()
結果我希望是
[1]
[1]
,但我得到
[1]
[1, 1]
這是一個錯誤?