首页 > 其他分享 >浅谈深拷贝和浅拷贝

浅谈深拷贝和浅拷贝

时间:2023-10-11 16:45:49浏览次数:31  
标签:浅谈 list4 list1 list3 print 拷贝 id

深拷贝和浅拷贝

深拷贝

import copy
list1=[1,2,3,4,[5,6,7]]
list2=copy.deepcopy(list1)
print(list1)
print(list2)
[1, 2, 3, 4, [5, 6, 7]]
[1, 2, 3, 4, [5, 6, 7]]
list1[0]+=1
print(list1)
print(list2)
[2, 2, 3, 4, [5, 6, 7]]
[1, 2, 3, 4, [5, 6, 7]]
list1[4].append(8)
print(list1)
print(list2)
[2, 2, 3, 4, [5, 6, 7, 8]]
[1, 2, 3, 4, [5, 6, 7]]

Conclusion:深拷贝不会被原列表变化影响。

浅拷贝

import copy
list3=[1,2,3,4,[5,6,7]]
list4=copy.copy(list3)
list3.append(8)
print(list3)
print(list4)
# copy列表没有多余指针指向新添加的第五项8
[1, 2, 3, 4, [5, 6, 7], 8]
[1, 2, 3, 4, [5, 6, 7]]
list3[4].append(8)
print(list3)
print(list4)
# 原列表变化第四项值,copy列表第四项也跟着变化
[1, 2, 3, 4, [5, 6, 7, 8], 8]
[1, 2, 3, 4, [5, 6, 7, 8]]
#可以看指向id
print(id(list3[0]))
print(id(list3[1]))
print(id(list3[2]))
print(id(list3[3]))
print(id(list3[4]))
print(20*'*')
print(id(list4[0]))
print(id(list4[1]))
print(id(list4[2]))
print(id(list4[3]))
print(id(list4[4]))
# id相同
2163417114928
2163417114960
2163417114992
2163417115024
2163517914752
********************
2163417114928
2163417114960
2163417114992
2163417115024
2163517914752

Conclusion:浅拷贝会被原列表变化影响。

标签:浅谈,list4,list1,list3,print,拷贝,id
From: https://www.cnblogs.com/Ccp2000/p/17757585.html

相关文章

  • 浅谈视频智能分析预警 事件识别算法硬件智能分析网关V2版的功能 及其智能分析网关V1版
    智能分析网关V1版本和智能分析网关V2版本相比,不仅在硬件外观上有所改变,而且在算法类别上也增加了一些新的内容。因此,今天我们将重点介绍智能分析网关V2版本的相关特性。智能分析网关V2是一种先进的数据处理设备,它融合了云计算、物联网和人工智能技术,主要应用于工业生产环境中......
  • 浅谈locust 性能压测使用
    1.基本介绍Locust是一个开源的负载测试工具,用于模拟大量用户并发访问一个系统或服务,以评估其性能和稳定性。编写语言为Python,可通过Python来自定义构建性能压测场景脚本。Locust支持分布式负载测试,可以通过多个机器协同工作来模拟大量用户并发访问。并提供了一个Web界面,可以实......
  • 关于C++拷贝控制
    通常来说,对于类内动态分配资源的类需要进行拷贝控制:要在拷贝构造函数、拷贝赋值运算符、析构函数中实现安全高效的操作来管理内存。但是资源管理并不是一个类需要定义自己的拷贝控制成员的唯一原因。C++Primer第5版中给出了一个Message类与Folder类的例子,分别表示电子邮件消息......
  • 浅谈构造数据这件事
    一.前言为什么会写这篇文章呢?原因就是最近一段时间测试发现身边2为测试人员一个优秀,一个普通,身上巨大差异点就出现在这里,前者,在转测前,利用空闲时间造好数据,为测试做好准备后者,因为不会造数据,基本上不造数据,针对需要推送数据的内容,基本就不测试,所有测试结果可想而知我们都知道,不......
  • 浅谈树链剖分—轻重链剖分
    闲话似乎会有很多种树剖,什么长链剖分之类的,但是暂时只会轻重链剖分(可怜)。以前的版本在这里,但是感觉写的太粗糙了,所以决定重写一篇(我也不知道为什么要一直写树剖而不写点别的)。正文引入如果给出一个序列,有一些区间修改查询之类的操作,直接上线段树什么的就完事了,但是如果给出的......
  • 浅谈 Java 程序运行
    JVM是如何启动的?配置JVM装载环境解析虚拟机参数设置线程栈大小执行JavaMain方法内存是如何管理的?JVM内存模型程序运行视角下的Java内存管理此处所说的JVM内存模型是一种通用逻辑模型,与具体的虚拟机实现无关,虚拟机可以根据实际情况基于通用逻辑模型,给出不同的......
  • 浅谈概率论
    浅谈概率论说句鲜花:明天就是月考,马上就是csp。但是不想学有用的东西,就写了这篇博客。严格数学公理体系:(水平不够,暂略)贝叶斯公式:定义\(P(A|B)\)为发生\(B\)事件下发生\(A\)事件的概率。则有\(P(A|B)=\dfrac{P(B|A)P(A)}{P(B)}\)证明:由于\(P(A|B)P(B)=P(B|A)P(A......
  • 浅谈关于LCA
    prologue本身只会tarjan和倍增法求LCA的,但在发现有一种神奇的\(O(1)\)查询lca的方法,时间优化很明显。mainbody倍增法先讨论倍增法,倍增法求lca是一种很常见普遍的方法,这里直接放代码了,其本身的内核就是让较低点每次都跳$2^k$步,如果跳的比另一个高了,就不跳那......
  • java本地文件多线程拷贝
    简单介绍:本地文件多线程拷贝是指通过多个线程同时进行文件复制操作。传统的文件复制操作往往是串行进行的,当需要复制单个大文件时,复制速度往往会比较慢。而采用多线程进行文件拷贝可以提高效率。通过同时创建多个线程,每个线程负责复制不同的文件或者不同的文件片段,可以充分利用计......
  • 浅谈一致性哈希Consistent Hashing
    目录1.一致性哈希定义2.工作原理3.应用场景4.使用一致性哈希的软件5.一致性哈希的开源实现6.一致性哈希的不足本文主要介绍一致性哈希的定义、原理,以及应用场景等内容。1.一致性哈希定义一致性哈希(ConsistentHashing)是一种特殊的哈希技术,主要用于解决分布式系统中的数据分布......