複製清單:在Python 中保持完整性
在Python 中,將新變數指派給現有清單會建立淺表副本,使您容易受到影響意外的清單修改。讓我們闡明為什麼會發生這種行為,並探索有效的克隆方法來確保清單不變性。
為什麼賦值不會導致複製:
當您執行 new_list = 時my_list,您將指向相同清單物件的指標指派給 new_list。這兩個變數都引用原始列表,使任何後續修改都在 new_list 和 my_list 中可見。
有效複製清單:
要建立真正的克隆,您需要幾種方法:
1.使用list.copy( ):
此方法在Python 3.3 中引入,可建立清單的不同副本。
**2.使用 [:] 對清單進行切片:**
此語法會建立與原始清單具有相同元素的新清單。
3.使用列表建構子 (list()):
這會從現有的可迭代物件建立一個新列表,例如另一個列表。
4.使用copy.copy():
這個內建函數提供了基本的淺拷貝,足以滿足大多數用例。
5.使用 copy.deepcopy():
這種更全面的方法建立深度複製,其中嵌套物件也被克隆。
範例:
讓我們來比較這些結果方法:
輸出:
輸出:從輸出🎜>從輸出中可以明顯看出,my_list 在附加'baz' 後發生了更改,而克隆的列表保持不變。以上是如何在 Python 中正確克隆列表並避免意外修改?的詳細內容。更多資訊請關注PHP中文網其他相關文章!