之拷贝对象本身。如果对象内容中还有列表,集合等元素;列表,集合还是会共享。
import copy a=['fang',[1,2]] b=copy.copy(a) print id(a),id(b) print a,b a[0]='qiang' a[1][1]=9 print a,b 结果: 140683666530104 140683666714992 ['fang', [1, 2]] ['fang', [1, 2]] ['qiang', [1, 9]] ['fang', [1, 9]] #内部的列表依然是共享的
之拷贝对象本身和它内部所有的列表,集合等元素
import copy a=['fang',[1,2]] b=copy.deepcopy(a) print id(a),id(b) print a,b a[0]='qiang' a[1][1]=9 print a,b 结果: 140707033386808 140707033571696 ['fang', [1, 2]] ['fang', [1, 2]] ['qiang', [1, 9]] ['fang', [1, 2]]