《深度学习之PyTorch物体检测实战》 学习笔记 python中的
可变对象与不可变对象
python 中 对象 和 变量概念
对象:内存中存储数据的实体,有明确的类型。python中一切都是对象,函数也属于对象。
变量:指向对象的指针,对象的引用。作为弱类型语言,python中的变量是没有类型的。
python中 可变对象 与 不可变对象
python中的对象,还可以进一步分为可变对象和不可变对象。
这一点用了这么久python,还第一次听说。虽然在另一个角度知道这么回事。
不可变对象:对象对应内存中的值不会变,因此如果指向该对象的变量被改变了,python会重新开辟一片内存,变量在指向这个新的内存,包括
int, float, str,
tuple 等。
可变对象:对象对应内存中的值可以改变,因此变量改变后,该对象也会改变,即原地修改,如
list, dict, set 等。
这里以int变量为例做一个简单的测试,说明不可变对象的含义。
1 | a = 1 |