Python陷阱:爲什麼不能用可變對象作爲函數的默認參數值

接着這個話題繼續聊一聊關於賦值的一些坑。 先來看一道題目:   我們似乎發現了一個Bug,每次用相同的方式調用函數 func() 時,返回結果竟然不一樣,而且每次返回的列表在不斷地變長。   從上面可以看出,函數的返回值其實是同一個列表對象,因爲他們的id值是一樣的,只不過是列表中的元素在變化。爲什麼會這樣呢? 這要從函數的特性說起,在 Python 中,函數是第一類對象(function is
相關文章
相關標籤/搜索