第六章python之深浅拷贝(基础四) 6.1 小数据池 小数据池就是Python中一种提高效率的方式,固定数据类型使用同一个内存地址 小数池 支持: str,int,bool a = 1 b = 1 id 查看空间的内存地址 获取开辟空间的一种地址 小数据池数字支持范围: 5 ~ 256 记住 代 ...
分类:
编程语言 时间:
2019-06-17 20:40:49
阅读次数:
165
4.2 深浅拷贝 4.2.1 认识 首先应该知道python中变量在内存中是怎么存放的! 在python中,变量与变量的值占用不同的内存。变量占用的内存,并非直接存储数值,而存储的是值在内存中的地址。 各种变量在内存中的存储,如下图: 下面进行代码测试: 注意: a = 1 b= a 这不是拷贝,赋 ...
分类:
编程语言 时间:
2019-06-15 15:06:33
阅读次数:
99
小数据池 1. 一种数据缓存机制,也称驻留机制 2. 在同一代码块,相同的值不会开辟新的内存 3. 特殊字符除外 4. 小数据池只针对:在控制台时! 数字 : 5到256间的整数会被缓存 布尔值:都会缓存8 字符串 小于等于一个字符时会缓存 超过一个字母但是只有下划线,字母,数字组成也会缓存 如果字 ...
分类:
其他好文 时间:
2019-06-13 20:14:21
阅读次数:
115
代码块,小数据池 在Python中id是内存地址 , 只要创建一个数据(对象)那么都会在内存中开辟一个空间,将这个数据临时加到内存中,这个空间是有一个唯一标识的,就好比是身份证号,标识这个空间的叫做内存地址,也就是这个数据(对象)的id,可以利用id()去获取这个数据的内存地址: is 和 == = ...
分类:
其他好文 时间:
2019-06-11 22:10:18
阅读次数:
127
各基本数据类型的地址存储及改变情况 在python中的数据类型包括:bool、int、long、float、str、set、list、tuple、dict等等。我们可以大致将这些数据类型归类为简单数据类型和复杂的数据结构。 数据结构: 集合结构:set 序列结构: tuple list (str) ...
分类:
编程语言 时间:
2019-06-08 19:14:05
阅读次数:
156
深浅拷贝:数据分离情况 1. =赋值:数据完全共享(指向内存中的同一个对象)被赋值的变量指向的数据和原变量的数据都是指向内存中的同一个地址: (1)如果是不可变数据类型(数字、字符串等),修改其中的一个值,实际是修改了变量指向与值对应的地址(相当于重新被赋值),因此会同时发生变化; (2)如果是可变 ...
分类:
其他好文 时间:
2019-05-12 15:27:11
阅读次数:
129
对于list, set, dict来说, 直接赋值. 其实是把内存地址交给变量. 并不是复制一份内容. 所以.lst1的内存指向和lst2是一样的. lst1改变了, lst2也发生了改变 浅拷贝 结果: 两个lst完全不一样. 内存地址和内容也不一样. 发现实现了内存的拷贝 浅拷贝. 只会拷贝第一 ...
分类:
其他好文 时间:
2019-05-06 20:47:48
阅读次数:
134
1、复制运算 2、拷贝 copy 3、深拷贝 deepcopy ...
分类:
其他好文 时间:
2019-04-30 12:32:10
阅读次数:
112
深浅拷贝 值拷贝:应用场景最多ls = [1, 'abc', [10]] ls1 = ls # ls1直接将ls中存放的地址拿过来# ls内部的值发生任何变化,ls1都会随之变化 ls2 = ls.copy() # 新开辟列表空间,但列表中的地址都是直接从ls列表中拿来# ls内部的可变类型值发生改 ...
分类:
编程语言 时间:
2019-04-18 21:39:18
阅读次数:
147