引用
1. 引用
1.1引用概念
引用是一种变量指向数据存储空间的现象
内存地址是数据在物理内存中的存储位置
引用地址是对象在内存中的描述性地址,该地址与内存地址有区别
1.2引用特征
相同的数据在内存空间中仅占用一个存储空间,不同的变量使用相同的数据则指向相同的存储空间。
1.3地址存储特殊性
使用固定内存地址存储数据如下:
n -5到256的整数
n True和False
n 由字母、数字、下滑线组成的字符串
使用临时内存地址存储数据如下:
n 小于-5后大于256的整数
n 所有小数
包含字母、数字、下滑线之外的字符组成的字符串
2. 列表引用、集合引用、字典引用都一样
2.1列表存储空间
n 无变量引用
列表保存在临时引用地址中,该引用地址可以反复使用
n 有变量引用
列表保存在独立引用地址中,该引用地址专用,每个列表对象具有独立的引用地址
2.2列表存储空间变更
1.列表变量指向引用地址,该引用地址中保存有存储列表信息的内存地址。
2.当列表中存储数据的空间不足时,会申请新的内存地址,并更新引用地址中对应的内存地址。
3.重新申请的内存地址将复制原始内存地址中的数据。
2.3列表中的数据存储
1.列表中存储的数据都是数据对应的内存地址,没有真实数据
2.列表中的数据是通过引用地址的形式查找真实数据
3. 元组引用
3.1元组存储空间
n 空元组(无数据)
空元组指向统一的独立引用地址,所有空元组共用同一个引用地址
n 非空元组(有数据)
非空元组保存在独立引用地址中,每个元组对象具有独立引用地址
注:由于元组不支持修改,不存在重新申请空间的问题,元组创建的同时存储的数据已经固定,内存结构也固定。
3.2元组中的数据存储(同列表)
1.元组中存储的数据都是数据对应的内存地址,没有真实数据
2.元组中的数据是通过引用地址的形式查找真实数据
注:元组不支持修改,但是元组中的数据如果是引用类型的,对应的数据可以在自身的内存地址中进行数据变更,对元组不影响。
4. 对象引用
4.1对象存储空间
n 无变量引用
对象保存在临时引用地址中,该引用地址可以反复使用
n 有变量引用
对象保存在独立引用地址中,该引用地址专用,每个列表对象具有独立的引用地址
4.2对象中的变量数据
1.对象中的变量存储的都是对应数据的引用地址,没有真实数据
2.对象中的变量是通过引用地址的形式查找真实数据
3.对象中的变量存储形式是一个字典的形式,对变量的操作参照字典的操作方式,变量名为字典的key,变量值为字典的value

浙公网安备 33010602011771号