当前位置:首页>python>Python知识点|Day14 深浅拷贝

Python知识点|Day14 深浅拷贝

  • 2026-10-03 12:47:07
Python知识点|Day14 深浅拷贝

Python知识点|Day14 深浅拷贝

✨今日核心知识点
列表、字典这类可变对象开发高频踩坑:修改新变量,原始数据同步改变!问题根源就是混淆赋值、浅拷贝、深拷贝。三者本质是内存引用逻辑不同,处理嵌套数据时差异尤为明显。
🌴基础语法原理
1. 赋值  b = a :仅仅新增变量引用,新旧变量指向同一块内存地址,不存在数据复制。
2. 浅拷贝  copy.copy() :创建全新外层容器;容器内部嵌套对象依旧共享内存地址。一维数据完全独立,嵌套数据会互相影响。
3. 深拷贝  copy.deepcopy() :递归复制所有层级对象,外层容器、内部嵌套元素全部开辟新内存,新旧数据完全隔离。
🎈代码实操示例
import copy
# 原始嵌套列表
data = [10, [20, 30]]

# 1.赋值操作
a = data
# 2.浅拷贝
b = copy.copy(data)
# 3.深拷贝
c = copy.deepcopy(data)

# 修改嵌套元素测试差异
data[1].append(40)
print(a,b,c)
⚠️新手易错点
1. 赋值不要当作数据备份方式,修改会同步影响原始变量
2. 浅拷贝只能隔离一维结构,遇到嵌套list、dict依然会出现数据联动
3. 字符串、元组等不可变类型,深浅拷贝几乎无区别
4. 深拷贝会带来性能开销,大规模循环场景不要盲目使用
🏖️今日小结
赋值=共用地址;浅拷贝=外层新建、内层共享;深拷贝=完整独立副本。简单一维容器可用浅拷贝,包含嵌套结构的数据备份,优先使用深拷贝。
#Python #Python自学 #编程入门 #零基础学编程 #每日编程打卡 #一天一个Python知识点

微信扫一扫赞赏作者钟意作者

    正在加载...
      正在加载...
      名称已清空
      微信扫一扫赞赏作者
      喜欢作者其它金额
      作品
      暂无作品
      喜欢作者
      其它金额
      最低赞赏 ¥0
      其它金额
      赞赏金额
      ¥
      最低赞赏 ¥0
      1
      2
      3
      4
      5
      6
      7
      8
      9
      0
      .
      收录于python从入门到精通
      山东,3小时前,2026年8月14日
      已修改

      最新文章

      随机文章