copy.copy()

元组和列表调用这个方法效果也不一样。

元组的效果:

a = [1,2,3]
b = [4,5,6]
c = (a,b)
e = copy.copy(c)

可以看到:e和c是指向了同一个地址。原因:元组是不可变类型,拷贝出来没有什么用,所以copy有个功能,可以判断这个东西是可变还是不可变类型,如果是可变类型,当时用copy.copy()对于可变类型的只会深拷贝一层,不可变类型的话,一层都不拷贝(浅拷贝)。

列表的效果:

可以看到:c和e指向了不同的地址,但是c和e里面的内容是指向了相同的地址

copy.deepcopy()

这个是深拷贝,并且是递归的形式拷贝的

元组的效果:

可以看到:它是把所有的内容都进行了了深拷贝

列表的效果:

可以看到:它是把所有的内容都进行了了深拷贝

总结:copy.deepcopy()在元组和列表的嵌套上的效果是一样的,都是进行了深拷贝(递归的)

copy.copy()与copy.deepcopy()的详解相关推荐

  1. 2020-09-18 python中copy()和deepcopy()详解

    首先直接上结论: -–我们寻常意义的复制就是深复制,即将被复制对象完全再复制一遍作为独立的新个体单独存在.所以改变原有被复制对象不会对已经复制出来的新对象产生影响. -–而浅复制并不会产生一个独立的对 ...

  2. python中copy()和deepcopy()详解

    参考文章 http://iaman.actor/blog/2016/04/17/copy-in-python **首先直接上结论: -–我们寻常意义的复制就是深复制,即将被复制对象完全再复制一遍作为独 ...

  3. python中deepcopy函数_python中copy()和deepcopy()详解

    **首先直接上结论: -–我们寻常意义的复制就是深复制,即将被复制对象完全再复制一遍作为独立的新个体单独存在.所以改变原有被复制对象不会对已经复制出来的新对象产生影响. -–而浅复制并不会产生一个独立 ...

  4. python中copy和deepcopy详解

    python中标识一个对象唯一身份的是:对象的id(内存地址),对象类型,对象值. deepcopy是真正意义上的复制,深拷贝,被复制对象完全复制一遍作为独立的新个体,新开辟一块空间. 浅拷贝,不会产 ...

  5. python3 copy_python3 深浅copy对比详解

    一.赋值对比 1.列表 l1 = [1,2,3] l2 = l1 l1.append('a') print(l1,l2) #[1, 2, 3, 'a'] [1, 2, 3, 'a'] print(id ...

  6. 深拷贝与浅拷贝(mutableCopy与Copy)详解 iOS

    深拷贝与浅拷贝(mutableCopy与Copy)详解 iOS ios中并不是所有的对象都支持copy,mutableCopy,遵守NSCopying 协议的类可以发送copy消息,遵守NSMutab ...

  7. linux cpio(copy in/out) 命令详解

    linux cpio(copy in/out) 命令详解 功能说明:备份文件. 语 法:cpio [-0aABckLovV][-C <输入/输出大小>][-F <备份档>][- ...

  8. (118)System Verilog 父类与子类对象复制(copy函数)详解

    (118)System Verilog 父类与子类对象复制(copy函数)详解 1.1 目录 1)目录 2)FPGA简介 3)System Verilog简介 4)System Verilog 父类与 ...

  9. C++ copy()函数用法详解(深入了解,一文学会)

    C++ 算法 copy() 函数用于将容器 [first,last] 的所有元素从结果开始复制到不同的容器中. 本文介绍了copy.strcpy.strncpy.memcpy.copy_n.copy_ ...

最新文章

  1. 【亚马逊AWS】入门级别实践
  2. LeetCode初级算法(数组)解答
  3. Maven插件之buildnumber-maven-plugin
  4. 实验——Windows常用网络测试命令
  5. udp 使用connect优点_nodejs源码分析第十九章 -- udp模块
  6. POJ-1664 放苹果 动态规划思想解组合数学
  7. diff命令两个服务器文件,linux 比较两个文件夹不同 (diff命令, md5列表)
  8. “数学不行,干啥也不行!”CTO:基础差的程序员,你不知道有多难!
  9. Web前端 Js文件上传类型限制(根据文件头信息判断)
  10. sprintf函数的用法
  11. 雷电模拟器android文件夹在哪,雷电模拟器共享文件夹怎么用_雷电模拟器共享文件夹功能使用方法介绍_3DM手游...
  12. 用.NET开发MSN聊天机器人 - MSN聊天机器人开发揭秘
  13. win8.1删除桌面的IE图标
  14. MThings连接移动OneNet物联网平台
  15. Java游戏项目开发 王者荣耀 学会你就是最强王者
  16. 英语口语100之每日十句口语
  17. 学委参加博客之星评选啦
  18. jQuery里面的 .on 和 .bind 的区别
  19. Java虚拟机学习与总结(一)
  20. Python:线程同步,Barrier屏障

热门文章

  1. 说话人识别模型finetune
  2. 数据分析_python数据可视化(基于matplotlib+pandas)
  3. 如何看待”咸鱼”一样的活着
  4. Docker - Docker Volume及Volume命令详解
  5. filebeat k8s健康探针
  6. 年薪40W毕业生大厂面试题合集,学完之后你不会拿不到offer
  7. dz兑换商城,使其支持多次兑换,兑换限制,和勋章打折
  8. 32位(x86)和64位(x64)
  9. ubantu下载SSH,使用butty连接自己Windows10和uabntu虚拟机
  10. TCP/IP协议族 总结