python浅拷贝和深拷贝比较

本文深入探讨了Python中数据类型的拷贝机制,区分了可变类型与不可变类型,并详细解析了浅拷贝与深拷贝的区别。通过具体实例,展示了不同类型数据拷贝后的内存地址变化,帮助读者理解拷贝的本质。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

python将内置的几种数据类型,再次分为可变类型与不可变类型

不可变类型有:string   int  tuple

可变类型有:list    dict  set

现在对这两种类型分别进行浅拷贝和深拷贝

一、对string进行浅拷贝和深拷贝,结果是一样的,对象的内存地址都没有变,也就是给对象又贴了一个标签

  二、对可变类型进行浅拷贝和深拷贝,拷贝后地址都变了

三、我们试一下对嵌套的可变类型进行浅拷贝和深拷贝

再进行deepcopy

总结:

  1. copy.copy对于可变类型,会进行浅拷贝
  2. copy.copy对于不可变类型,不会拷贝,仅仅是指向
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值