1. 程式人生 > >Python中的深拷貝和淺拷貝

Python中的深拷貝和淺拷貝

append class pre deepcopy color com htm .com har

來自:I‘m Me!

python中的對象之間賦值時是按引用傳遞的,如果需要拷貝對象,需要使用copy模塊。

1. copy.copy()淺拷貝:只拷貝父對象,不拷貝對象內部的子對象

2. copy.deepcopy()深拷貝:拷貝對象及其子對象

import copy


a = [1,2,3,4,[a,b]]       # 原始對象
b = a                         # 賦值,傳對象的引用
c = copy.copy(a)              # 淺拷貝(只拷貝父對象,不拷貝對象內部的子對象)
d = copy.deepcopy(a)          #
深拷貝(拷貝對象及其子對象) a.append(5) a[4].append(c) print(a = , a) print(b = , b) print(c = , c) print(d = , d)

技術分享圖片

Python中的深拷貝和淺拷貝