import copy #使用copy需要导入 a = [1,2,[3,4]] b = a #直接赋值语句,相当于给a添加了一个引用,其中任何一个变化,另一个都会同步变化 #id(a)跟id(b) 输入相同,可以使用a is b 返回 True id(a),id(b) #输出 (50311880, 50311880) a is b #输出 True c = copy.copy(a) #这里对a进行浅拷贝 print(c) #输出[1,2,[3,4]] id(a),id(c) #输出 (50311880, 50232904) a is c #输出 False #从这里可以看出,a,c指向的不是一个变量,父对象指的就是a跟c #那如果看子对象呢,子对象指的就是a里面的 [4,5] #先对a for x in a: id(x) #输出 #2004268720 #2004268752 #50311944
#再对c for x in c: id(x) #输出 #2004268720 #2004268752 #50311944