深浅拷贝

只要涉及拷贝,就会涉及创建新对象

浅拷贝,会创建一个新的容器,列表中的元素和原列表的元素用的是同一个内存空间

第一种方法:从头切到尾,完整的复制一份

lst = [1,2,3,4]
lst1 = lst[:] #从头切到尾,重新完整的复制了一份
print(lst,lst1)

第二种方法:.copy

lst1 = lst.copy()		#创建对象的速度,会很快

深拷贝,拷贝的是表面,和深层的东西

不可变的数据类型和原列表指向的是同一个内存空间,可变数据类型会创建一个新的空间

import copy
lst = [1,2,[3,4],5]
lst2 = copy.deepcopy(lst) #copy.deepcopy 深拷贝
print(id(lst1[1]),id(lst[1]) #肯定不一样d's

1.赋值没有创建新对象,多个变量共享一个内容

2.浅拷贝,会创建新对象,新对象里面的内容不会被拷贝

3.深拷贝,创建一个一摸一样完全新的对象 不可变对象,还是原来的,可变对象创建新的

Python细节(一)深浅拷贝的更多相关文章

  1. 第五篇python进阶之深浅拷贝

    目录 第五篇python进阶之深浅拷贝 一.引言 1.1可变 和不可变 二.拷贝(只针对可变数据类型) 三.浅拷贝 四.深拷贝 第五篇python进阶之深浅拷贝 一.引言 1.1可变 和不可变 id不 ...

  2. 天啦噜!仅仅5张图,彻底搞懂Python中的深浅拷贝

    Python中的深浅拷贝 在讲深浅拷贝之前,我们先重温一下 is 和==的区别. 在判断对象是否相等比较的时候我们可以用is 和 == is:比较两个对象的引用是否相同,即 它们的id 是否一样 == ...

  3. Python 中的深浅拷贝

    Python 中的深浅拷贝 参考文献:https://blog.csdn.net/lnotime/article/details/81194633 参考文献:https://blog.csdn.net ...

  4. python——赋值与深浅拷贝

    初学编程的小伙伴都会对于深浅拷贝的用法有些疑问,今天我们就结合python变量存储的特性从内存的角度来谈一谈赋值和深浅拷贝~~~ 预备知识一——python的变量及其存储 在详细的了解python中赋 ...

  5. Python中的深浅拷贝

    1.什么是深浅拷贝? python中一切皆对象,python中的数字.字符串.元组等,如果存放在了内存中,这部分内存里面的内容是不会改变的,但是也有情况,内存中存放了可变对象,比如说列表和字典,他们的 ...

  6. python基础(6)-深浅拷贝

    赋值 字符串和数字 # id()函数可以获取变量在内存中的地址标识 num1 = 2; num2 = 2; print(id(num1)) # result:8791124202560 print(i ...

  7. Python学习(006)-深浅拷贝及集合

     深浅拷贝 import copy husband=['xiaoxin',123,[200000,100000]] wife=husband.copy() #浅拷贝 wife[0]='xiaohong ...

  8. Python基础【3】:Python中的深浅拷贝解析

    深浅拷贝 在研究Python的深浅拷贝区别前需要先弄清楚以下的一些基础概念: 变量--引用--对象(可变对象,不可变对象) 切片(序列化对象)--拷贝(深拷贝,浅拷贝) 我是铺垫~ 一.[变量--引用 ...

  9. 人生苦短之我用Python篇(深浅拷贝、常用模块、内置函数)

    深浅拷贝 有时候,尤其是当你在处理可变对象时,你可能想要复制一个对象,然后对其做出一些改变而不希望影响原来的对象.这就是Python的copy所发挥作用的地方. 定义了当对你的类的实例调用copy.c ...

随机推荐

  1. Linux无人值守安装系统

    yum install dhcp -yvim /etc/dhcp/dhcpd.conf--------------------------------------------- allow booti ...

  2. 使用vuex实现父组件调用子组件方法

    曲线救国. 核心原理就是父子共用一个vuex对象,且看代码: 父组件parent.vue <template> <div class="wrap"> < ...

  3. Linux查看用户列表

    cat /etc/passwd 可以查看所有用户的列表w 可以查看当前活跃的用户列表cat /etc/group 查看用户组 groups 查看当前登录用户的组内成员groups gliethttp ...

  4. 超星toPDF

    * ssReader to pdf   Note: editor: Emacs-org   1. download and open the book with sspreader 2. click ...

  5. change legend layout from 'vertical' to 'horizontal' in Paraview

    ********** # get color legend/bar for 'vLUT' in view 'renderView1'vLUTColorBar = GetScalarBar(vLUT, ...

  6. Codeforces Round #395 C. Timofey and a tree

    package codeforces; import java.util.*; public class CodeForces_764C_Timofey_and_a_tree { static fin ...

  7. PAT 1141 PAT Ranking of Institutions

    After each PAT, the PAT Center will announce the ranking of institutions based on their students' pe ...

  8. HDU 2082 母函数法

    #include <cstdio> #include <cstring> using namespace std; ] , dp[][]; int main() { // fr ...

  9. [luoguP2280] [HNOI2003]激光炸弹(DP)

    传送门 二位前缀和DP大水题 ——代码 #include <cstdio> #include <iostream> ; int n, r, ans; int sum[MAXN] ...

  10. hdu 3062 2-sat

    #include<stdio.h> #include<string.h> #define N 2100 struct node { int u,v,next; }bian[N* ...