python变量、对象和引用你真的明白了吗
变量、对象和引用
Python 不像 C++ , Java 等语言一样,他们可以不用事先声明变量类型而直接对变量进行赋值。对 Python 语言来讲,对象的类型和内存都是在运行时确定的。这也是为什么我们称 Python 语言为 动态类型 的原因
这里我们把动态类型可以简单的归结为 对变量内存地址的分配是在运行时自动判断变量类型并对变量进行赋值
例子
在
Python 中使用变量的时候不需要提前声明变量及其类型,
我们这里以
a = 1
来举例:
这里变量为 a , 1 为对象。
注意两点:
1.变量无类型,对象有类型: 「类型」这个概念不是存在于变量中,而是存在于对象中 。变量本身就是通用的,它只是恰巧在某个时间点上引用了当时的特定对象而已。就比如说在表达式中,我们用的那个变量会立马被它当时所引用的特定对象所替代。
2.变量引用对象:变量通过一根线,连着对象,变量用自己所拥有的能力,把对象和自己连接起来(指针连接对象空间),引用建立了变量和对象之间的映射关系,这就是引用。引用完成,就实现了赋值。
比如x = 7
总结:
变量是到内存空间的一个指针,也就是拥有指向对象连接的空间;
对象是一块内存空间,内存空间里存储它们所表示的值;
引用就是自动形成的从变量到对象的映射关系(指针)