copy---探索

1.浅copy    就相当于把变量指针指向对象 相当于给对象从新起了个小名

  a=[[1,2],3,4]

a=[[1,2],3,4]
b=a.copy()
# print(a)
# print(b)
# >>>>[[1, 2], 3, 4]
# >>>>[[1, 2], 3, 4]
# b[2]=1
# print(a)
# print(b)
# >>>>[[1, 2], 3, 4]
# >>>>[[1, 2], 3, 1]
b[0][1]=44
# print(a)
# print(b)
# >>>[[1, 44], 3, 4]
# >>>[[1, 44], 3, 4]

2.深copy    就像把对象从新创建一遍   连个对象没有关系

a=[[1,2],3,4]
import copy
b=copy.deepcopy(a)
# print(b)
# print(a)
# >>>[[1, 2], 3, 4]
# >>>[[1, 2], 3, 4]
# b[2]=888
# print(b)
# print(a)
# >>>[[1, 2], 3, 888]
# >>>[[1, 2], 3, 4]
b[0][1]=999
print(a)
print(b)
[[1, 2], 3, 4]
[[1, 999], 3, 4]

千    里       之       行         始         于            足              下

Python ---------copy的更多相关文章

  1. python copy模块

    python copy模块 copy模块用于对象的拷贝操作 该模块只提供了两个主要的方法: copy.copy:浅复制 copy.deepcopy:深复制 直接赋值,深拷贝和浅拷贝的区别 直接赋值:简 ...

  2. Python copy and deepcopy

    Python中的对象之间赋值时是按引用传递的,如果需要拷贝对象,需要使用标准库中的copy模块. 1. copy.copy 浅拷贝 只拷贝父对象,不会拷贝对象的内部的子对象. 2. copy.deep ...

  3. Python copy对象(copy与deepcopy)

    Python中的对象之间赋值时是按引用传递的,如果需要拷贝对象,需要使用标准库中的copy模块. 1. copy.copy 浅拷贝 只拷贝父对象,不会拷贝对象的内部的子对象. 2. copy.deep ...

  4. python copy和deepcopy

    Python FAQ2:赋值.浅拷贝.深拷贝的区别? 发表于 2014-08-15   |   分类于 Lang.-Python  |   在写Python过程中,经常会遇到对象的拷贝,如果不理解浅拷 ...

  5. python copy与deepcopy (拷贝与深拷贝)

    copy与deepcopy python 中的copy与deepcopy是内存数据的操作,但是两个函数有一定的区别. 1.copy import copy list = [1, [4, 5, 6], ...

  6. Python copy(), deepcopy()

    copy() 浅拷贝: 创建一组拷贝对象的引用.切片操作相当于浅拷贝,会生成一个新的对象,新的对象里保存原对象的引用. 如果原对象中的可变对象改变(list),那么浅拷贝的对象随之改变,如果原对象中不 ...

  7. Python学习-赋值、浅copy和深copy

    Python Copy: 在Python语言中,分为浅拷贝和深拷贝两种形式,也就是官方文档中的Shadow copy和Deep copy.在对简单的对象(object)进行复制时,两者没有区别,如下面 ...

  8. 多进程copy文件

    from multiprocessing import Pool,Manager import os,time def copyFileTask(fileName,oldFolderName,newF ...

  9. 【Python】列表(数组)的引用和拷贝

    # Python里对象赋值传递的引用 arr=[1,2,3,4,5] newArr=arr arr[1]=9 print('arr='+str(arr)) print('newArr='+str(ne ...

随机推荐

  1. How to install Savanna

    Pre-conditions: openstack has been installed successfully. 解压软件包中的savanna-all.tar.gz安装tar -C / -xzf ...

  2. Ubuntu 下的环境变量配置

    网上很多配置jdk环境变量的方法,但是几乎都会下次重启电脑就失效,或者时不时的失效.下面教你一招 JDK环境变量配置如下: 执行命令sudo gedit /etc/environment,在打开的编辑 ...

  3. aix 禁止root远程登录

    Aix禁止root远程登录 aix用户扩展信息大都在/etc/security/user这个文本文件里.你可以修改: login=false 用户不能登录系统 rlogin=false 用户不能从远程 ...

  4. Java Tips and Best practices to avoid NullPointerException

    A NullPointerException in Java application is best way to solve it and that is also key to write rob ...

  5. 两行代码实现微信小程序联系人sidebar

    话不多说,先给你们看看核心数据和结构: 一.数据: city的json array,letter的array (city的json array里的首字母是我手工放置进去的,你也可以通过for循环获得c ...

  6. JavaScript系列文章:详解正则表达式之三

    在上两篇文章中博主介绍了JavaScript中的正则常用方法和正则修饰符,今天准备聊一聊元字符和高级匹配的相关内容. 首先说说元字符,想必大家也都比较熟悉了,JS中的元字符有以下几种: / \ | . ...

  7. windows下使用命令查看端口占用情况

    使用下面的命令查看端口占用情况: 比如查看3000端口的占用情况 netstat -ano|findstr 3000 运行后,结果如下: 可以看到进程号为9692的占用了该端口,使用下面的命令查看是哪 ...

  8. Java垃圾回收机制的工作原理

    Java垃圾回收机制的工作原理 [博主]高瑞林 [博客地址]http://www.cnblogs.com/grl214 获取更多内容,请关注小编个人微信公众平台: 一.Java中引入垃圾回收机制的作用 ...

  9. Mysql连表查询

    http://blog.csdn.net/qmhball/article/details/8000003 可以参考这篇文章

  10. Ubuntu16 64位安装steam, 并解决无法启动的问题

    直接用crtl+shift打开终端,运行下面的命令. sudo add-apt-repository multiverse sudo apt update sudo apt install steam ...