python入门之深浅copy
a1=["a","b","c","aa"]
b1=a1
a1[0]=""
print(a1,b1)
此时结果为:
a1=["","b","c","aa"]
b1=["","b","c","aa"]
当两个列表赋值想等的话,改变其中一个列表里的元素,另一个列表中的元素也会随之变化。
a1=["a","b","c","aa"]
c1=a1.copy()
a1[0]=""
print(a1,c1)
此时结果为:
a1=["","b","c","aa"]
b1=["a","b","c","aa"]
a1=["a","b","c","aa",["gaohui",21]]
d1=a1.copy()
a1[-1][0]="hong"
print(a1,d1)
此时结果为:
a1=["a","b","c","aa",["hong",21]]
d1=["a","b","c","aa",["gaohui",21]]
浅copy:
1.是把列表本身独立,里面的元素是被两个列表共享的
2.当其中一个列表中的元素被改变时,另一个列表中的元素不会随之变化。
3.当列表里面还有列表时,修改内部列表的内容时,另一个列表中的内部列表也会随之变化
深copy:
import copy
列表=copy.deepcopy(列表)
当用到深copy时,两个列表的所有内容都是独立的,没有任何关系。
python入门之深浅copy的更多相关文章
- python 集合和深浅copy
#1数据类型的补充#2.集合set#3.深浅copy 补充:str --> bytes s.encode('gbk')bytes --> str s.decode('gbk') 1.数据类 ...
- Python基础之深浅copy
1. 赋值 lst1 = [1, 2, 3, ["a", "b", "c"]] lst2 = lst1 lst1[0] = 11 print ...
- python学习日记(深浅copy)
赋值 #赋值,指向同一内存地址 l1 = [1,2,3,4,5] l2 = l1 print(l1,l2) print(id(l1),id(l2)) 浅copy #浅copy,第一层互相独立,创建了新 ...
- python中的深浅copy
https://www.cnblogs.com/Eva-J/p/5534037.html 转自Eva_J 分析的特别好
- python 的内存回收,及深浅Copy详解
一.python中的变量及引用 1.1 python中的不可变类型: 数字(num).字符串(str).元组(tuple).布尔值(bool<True,False>) 接下来我们讲完后你就 ...
- Python 入门之代码块、小数据池 与 深浅拷贝
Python 入门之代码块.小数据池 与 深浅拷贝 1.代码块 (1)一个py文件,一个函数,一个模块,终端中的每一行都是代码块 (代码块是防止我们频繁的开空间降低效率设计的,当我们定一个变量需要开辟 ...
- python基础3(元祖、字典、深浅copy、集合、文件处理)
本次内容: 元祖 字典 浅copy和深copy 集合 文件处理 1.1元祖 元祖(tuple)与列表类似,不同之处在于元祖的元素不能修改,元祖使用小括号(),列表使用方括号[].元祖创建很简单,只需要 ...
- python学习笔记三 深浅copy,扩展数据类型(基础篇)
深浅copy以及赋值 对于字符串和数字而言,赋值.浅拷贝和深拷贝无意义,因为其永远指向同一个内存地址. import copy n1 = #n1 = 'hahahaha' #赋值n2 = n1#浅co ...
- Python 第三篇(下):collections系列、集合(set)、单双队列、深浅copy、内置函数
一.collections系列: collections其实是python的标准库,也就是python的一个内置模块,因此使用之前导入一下collections模块即可,collections在py ...
随机推荐
- jenkin、SVN、archery集成openLDAP
jenkins: 1.下载.安装插件 LDAP .Matrix Authorization Strategy 2. 系统管理 —> 全局安全配置 点击 启用安全,并且选择 LDAP 认证,这里有 ...
- 第二章 向量(a)接口与实现
- phpword根据模板导出word
参考网址:http://phpword.readthedocs.io/en/latest/installing.html 在composer.json中添加 { "require" ...
- 转Genymetion
http://www.cnblogs.com/rainboy2010/p/6387770.html 介绍 Genymotion是一款出色的跨平台的Android模拟器,具有容易安装和使用.运行速度快的 ...
- Angular之输入输出属性
一 父组件 company.component.ts import { Component, OnInit } from '@angular/core'; @Component({ selector: ...
- Chrome格式化JavaScript代码
很多第三方插件的脚本,是压缩后的代码,甚至时动态加载的,代码只有一行. Chrome提供了格式化脚本代码的功能,方便加断点调试. 1 在Sources面板中,点击脚本名称,打开脚本源码. 2 点击左下 ...
- 25 【python入门指南】如何编写测试代码
python如何编写测试代码 python内置了unittest,使得写应用层的单元测试变得超乎寻常的简单. 1,执行单个测试函数 #!/bin/python import unittest clas ...
- Django使用jsonp和cors解决跨域请求问题
1.使用jsonp的方式解决跨域请求的问题 我启动两个django项目,然后使用的端口不一样,在项目1中通过ajax发请求给项目2,然后接受项目2发送过来的数据 先看项目1的ajax的代码 $(&qu ...
- Flex 布局排版总结
1.display: flex / inline-flex; flex: 作为弹性盒自适应屏幕 inline-flex:作为弹性盒自适应当前块级元素所包含的子级块 例:flex,子级块宽度自动相加, ...
- URL编码表、Base64编码表、HTTP消息含义
URL编码表 backspace 8% A 41% a 61% § %A7 Õ %D5 tab 9% B 42% b 62% « %AB Ö %D6 linefeed %0A C 43% c 63% ...