在 Python 中,深拷贝(Deep Copy)和浅拷贝(Shallow Copy)的主要区别在于如何处理对象内部的子对象(nested objects)。 简单来说: 浅拷贝:只复制最外层的容器,内部的元素依然是引用(指向原来的对象)。 深拷贝:不仅复制最外层的容器,还递归地复制内部所有的元素,完全独立。 为了讲清楚,我们需要先引入一个基准概念:直接赋值。 --- 0. 预备知识:直接赋值 () 直接赋值不是拷贝。它只是给同一个对象起了一个别名。 现象: 结果: 和 指向内存中完全相同的地址。修改 也就是修改 。 --- 1. 浅拷贝 (Shallow Copy) 浅拷贝会创建一个新的对象(容器),但是这个新对象里的元素,依然是指向原对象中元素的引用。 实现方式: 列表切片 工厂函数 , 对象自带的 方法 特点: 第一层是独立的:如果你修改最外层的数据(例如增加/删除元素),原对象不会受影响。 内部嵌套层是共享的:如果你修改内部嵌套的可变对象(例如列表里的列表),原对象会受影响。 代码示例: --- 2. 深拷贝 (Deep Copy) 深拷贝会创建一个新的对象,并且递归地将...