copy.copy()与copy.deepcopy()的详解
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()的详解相关推荐
- 2020-09-18 python中copy()和deepcopy()详解
首先直接上结论: -–我们寻常意义的复制就是深复制,即将被复制对象完全再复制一遍作为独立的新个体单独存在.所以改变原有被复制对象不会对已经复制出来的新对象产生影响. -–而浅复制并不会产生一个独立的对 ...
- python中copy()和deepcopy()详解
参考文章 http://iaman.actor/blog/2016/04/17/copy-in-python **首先直接上结论: -–我们寻常意义的复制就是深复制,即将被复制对象完全再复制一遍作为独 ...
- python中deepcopy函数_python中copy()和deepcopy()详解
**首先直接上结论: -–我们寻常意义的复制就是深复制,即将被复制对象完全再复制一遍作为独立的新个体单独存在.所以改变原有被复制对象不会对已经复制出来的新对象产生影响. -–而浅复制并不会产生一个独立 ...
- python中copy和deepcopy详解
python中标识一个对象唯一身份的是:对象的id(内存地址),对象类型,对象值. deepcopy是真正意义上的复制,深拷贝,被复制对象完全复制一遍作为独立的新个体,新开辟一块空间. 浅拷贝,不会产 ...
- 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 ...
- 深拷贝与浅拷贝(mutableCopy与Copy)详解 iOS
深拷贝与浅拷贝(mutableCopy与Copy)详解 iOS ios中并不是所有的对象都支持copy,mutableCopy,遵守NSCopying 协议的类可以发送copy消息,遵守NSMutab ...
- linux cpio(copy in/out) 命令详解
linux cpio(copy in/out) 命令详解 功能说明:备份文件. 语 法:cpio [-0aABckLovV][-C <输入/输出大小>][-F <备份档>][- ...
- (118)System Verilog 父类与子类对象复制(copy函数)详解
(118)System Verilog 父类与子类对象复制(copy函数)详解 1.1 目录 1)目录 2)FPGA简介 3)System Verilog简介 4)System Verilog 父类与 ...
- C++ copy()函数用法详解(深入了解,一文学会)
C++ 算法 copy() 函数用于将容器 [first,last] 的所有元素从结果开始复制到不同的容器中. 本文介绍了copy.strcpy.strncpy.memcpy.copy_n.copy_ ...
最新文章
- 【亚马逊AWS】入门级别实践
- LeetCode初级算法(数组)解答
- Maven插件之buildnumber-maven-plugin
- 实验——Windows常用网络测试命令
- udp 使用connect优点_nodejs源码分析第十九章 -- udp模块
- POJ-1664 放苹果 动态规划思想解组合数学
- diff命令两个服务器文件,linux 比较两个文件夹不同 (diff命令, md5列表)
- “数学不行,干啥也不行!”CTO:基础差的程序员,你不知道有多难!
- Web前端 Js文件上传类型限制(根据文件头信息判断)
- sprintf函数的用法
- 雷电模拟器android文件夹在哪,雷电模拟器共享文件夹怎么用_雷电模拟器共享文件夹功能使用方法介绍_3DM手游...
- 用.NET开发MSN聊天机器人 - MSN聊天机器人开发揭秘
- win8.1删除桌面的IE图标
- MThings连接移动OneNet物联网平台
- Java游戏项目开发 王者荣耀 学会你就是最强王者
- 英语口语100之每日十句口语
- 学委参加博客之星评选啦
- jQuery里面的 .on 和 .bind 的区别
- Java虚拟机学习与总结(一)
- Python:线程同步,Barrier屏障