博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
浅拷贝深拷贝Python对象的拷贝
阅读量:4364 次
发布时间:2019-06-07

本文共 624 字,大约阅读时间需要 2 分钟。

最近使用开发的过程中出现了一个小问题,顺便记录一下原因和方法--浅拷贝深拷贝

    

一、定义

    Python对象的拷贝分为两种:深拷贝和浅拷贝。

    深拷贝:拷贝对象及其子对象。

    浅拷贝:只拷贝对象本身,不会拷贝对象的子对象。

    

二、举例

    有列表a=[1,2,3,4,[5,6]]

    浅拷贝有两种方法,一种是切片b=a[:],另外一种是使用copyc=copy.copy(a)

    深拷贝和方法

    每日一道理
冰心说道:“爱在左,同情在右,走在生命的两旁,随时撒种,随时开花,将这一径长途,点缀得香花弥漫,使穿枝拂叶的行人,踏着荆棘,不觉得痛苦,有泪可落,却不是悲凉。”

    怎么验证这样是浅拷贝呢?

    深拷贝和方法

    可以看到列表b和列表c中的子列表只是一个引用类型,并非列表a的子列表的拷贝。

    深拷贝的方法是使用copy库,下图可以看到列表d的子列表并没有随着a[4]的转变而转变。

    深拷贝和方法

    好了今天就写到这里了。

文章结束给大家分享下程序员的一些笑话语录: 一程序员告老还乡,想安度晚年,于是决定在书法上有所造诣。省略数字……,准备好文房4宝,挥起毛笔在白纸上郑重的写下:Hello World

--------------------------------- 原创文章 By

子对象和定义
---------------------------------

转载于:https://www.cnblogs.com/xinyuyuanm/archive/2013/05/30/3109239.html

你可能感兴趣的文章
EJB 笔记
查看>>
【delete】Android自定义控件(四) 自定义ImageView动态设置ImageView的高度
查看>>
HDUOJ------(1230)火星A+B
查看>>
Servlet
查看>>
基于jquery地图特效全国网点查看代码
查看>>
【leetcode】867 - Transpose Matrix
查看>>
selenium动作链
查看>>
《设计你的人生》的部分经典语录
查看>>
mustache多次渲染和多个赋值
查看>>
Web 前端开发精华文章推荐(HTML5、CSS3、jQuery)【系列二十三】
查看>>
linux-nohup命令
查看>>
[LeetCode OJ] Roman to Integer
查看>>
三次握手和四次挥手
查看>>
Redis的简单动态字符串实现
查看>>
putty network error:software caused connection abort
查看>>
存储过程 <3> 和函数的区别
查看>>
高级service之ipc ADIL用法
查看>>
Django框架-基础篇
查看>>
Leetcode: Binary Tree Maximum Path Sum
查看>>
通过虚拟环境创建并开始一个django
查看>>