1. 浅拷贝
特点:只能改变列表的第一层数据,
a=[1,[2,3,4]]
b=a
print(a,b)
print(id(a),id(b))
b=a.copy()
b[0]=3
print(id(a),id(b))
print(a,b)
b[1][2]=5
print(a,b)
运行结果为
[1, [2, 3, 4]] [1, [2, 3, 4]]
1937711456904 1937711456904
1937711456904 1937712005896
[1, [2, 3, 4]] [3, [2, 3, 4]]
[1, [2, 3, 5]] [3, [2, 3, 5]]
1. 深度拷贝
形成两个独立的列表
import copy
a=[1,[2,3,4]]
b=copy.deepcopy(a)
b[0]=3
b[1][2]=5
print(id(a),id(b))
print(a,b)
运行结果为:
1883214700808 1883214613256
[1, [2, 3, 4]] [3, [2, 3, 5]]
再加入两张图(引用)