1、淺拷貝(shallow copy)
所謂“淺拷貝”,是指創建壹個新的對象,其內容是原對象中元素的引用。(拷貝組合對象,不拷貝子對象)
常見的淺拷貝有:切片操作、工廠函數、對象的copy()方法、copy模塊中的copy函數。
2、深拷貝(deep copy)
所謂“深拷貝”,是指創建壹個新的對象,然後遞歸的拷貝原對象所包含的子對象。深拷貝出來的對象與原對象沒有任何關聯。
深拷貝只有壹種方式:copy模塊中的deepcopy函數。
總結:
copy淺拷貝,沒有拷貝子對象,所以原始數據改變,子對象會改變
深拷貝,包含對象裏面的自對象的拷貝,所以原始對象的改變不會造成深拷貝裏任何子元素的改變