一、变量的引用
变量和数据都是保存在内存中的
在python中函数的参数传递以及返回值都是靠引用传递的
1.引用的概念
在python中
变量和数据是分开储存的
数据保存在内存中的一个位置
变量中保存着数据在内存中的地址
变量中记录数据的地址,就叫做引用。
使用id()函数可以查看变量中保存数据所在的内存地址
注意:如果变量已经被定义,当给一个变量赋值的时候,本质上是修改了数据的引用。
变量不再对之前的数据引用
变量改为对新赋值的数据引用
二、可变与不可变类型
- 不可变类型,内存中的数据不允许被修改:
数字类型
元组
字符串
- 可变类型,内存中的数据可以被修改:
列表
字典
注意:1.可变类型的数据变化,是通过方法来实现的
2.如果给一个可变类型的变量,赋值了一个新的数据,引用会修改
变量不再对之前的数据引用
变量改为对新赋值的数据引用
三、哈希
1.Python中内置有一个名字叫做hash(o)的函数
接收一个不可变类型的数据作为参数
返回结果是一个整数
2.哈希是一种算法,其作用就是提取数据的特征码
相同的内容得到相同的结果
不同的内容得到不同的结果
3.在python中,设置字典的键值对时,会首先对key进行hash已决定如何在内存中保存字典的数据,以方便后续对字典的操作:增、删、改、查。
键值对的key必须是不可变类型数据
键值对的value可以是任意类型的数据