python copy deepcopy

python的存储方式

a=1

变量a中并不是保存的1的值,而是指向1的值的索引(reference),以下两个例子可以看出:

a=1
b=a
a=2
print(a)//2
print(b)//1
a=[1,2,3]
b=a
a=[4,5,6]
print(a)//[4,5,6]
print(b)//[1,2,3]

copy,deepcopy

import copy

ori = [1,2,[3,4]]
f=copy.copy(ori)
s =copy.deepcopy(ori)
ori[0]=5
ori[2][1]=6
print(ori)//[5, 2, [3, 6]]
print(f)//[1, 2, [3, 6]]
print(s)//[1, 2, [3, 4]]

copy()函数并不会复制嵌套在列表里面的复杂对象,而deepcopy会全部复制出来一份

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 〇、前言 本文共108张图,流量党请慎重! 历时1个半月,我把自己学习Python基础知识的框架详细梳理了一遍。 ...
    Raxxie阅读 19,084评论 17 410
  • 个人笔记,方便自己查阅使用 Py.LangSpec.Contents Refs Built-in Closure ...
    freenik阅读 67,777评论 0 5
  • https://litaotao.github.io/python-materials 1. 枚举 - enume...
    柒呇阅读 1,045评论 0 1
  • 第九课 新生命与重生 一 :重生……重水和圣灵生 尼哥底母和耶稣的谈论,我们每个人有一个从母腹而来的肉身生命,这...
    小雨鱼儿阅读 1,781评论 0 0
  • class 和 id 的使用场景 id定位到页面上唯一元素,而class定位到某一类元素。 CSS选择器种类 (1...
    饥人谷_张乐阅读 196评论 0 0