共計 529 個字符,預計需要花費 2 分鐘才能閱讀完成。
在 Python 中,深拷貝和淺拷貝是兩種不同的拷貝對象的方法。
- 淺拷貝(Shallow Copy):
淺拷貝是創建一個新的對象,但是該對象中的元素都是原對象中元素的引用。也就是說,新對象中的元素和原對象中的元素指向同一個內存地址。當修改新對象中的元素時,原對象中的元素也會相應地發生改變。Python 中可以使用 copy() 方法來進行淺拷貝。
import copy
a = [1, 2, [3, 4]]
b = copy.copy(a)
b[2][0] = 5
print(a) # [1, 2, [5, 4]]
- 深拷貝(Deep Copy):
深拷貝是創建一個新的對象,同時將原對象中的元素遞歸地進行拷貝,新對象中的元素和原對象中的元素是完全獨立的。修改新對象中的元素不會影響到原對象中的元素。Python 中可以使用 deepcopy() 方法來進行深拷貝。
import copy
a = [1, 2, [3, 4]]
b = copy.deepcopy(a)
b[2][0] = 5
print(a) # [1, 2, [3, 4]]
總的來說,淺拷貝只拷貝了對象的一層引用關系,而深拷貝則會遞歸地拷貝對象的所有引用關系,從而創建一個全新的對象。深拷貝消耗的時間和內存資源比淺拷貝更多,但是可以保證對象之間的完全獨立。
丸趣 TV 網 – 提供最優質的資源集合!
正文完