Python模組學習:copy 物件拷貝

發表於2015-05-25

copy模組用於物件的拷貝操作。該模組非常簡單,只提供了兩個主要的方法: copy.copy 與 copy.deepcopy ,分別表示淺複製與深複製。什麼是淺複製,什麼是深複製,網上有一卡車一卡車的資料,這裡不作詳細介紹。複製操作只對複合物件有效。用簡單的例子來分別介紹這兩個方法。

淺複製只複製物件本身,沒有複製該物件所引用的物件。

同樣的程式碼,使用深複製,結果就不一樣:

改變copy的預設行為

在定義類的時候,通過定義__copy__和__deepcopy__方法,可以改變copy的預設行為。下面是一個簡單的例子:

相關文章