变量与常量
# 变量与常量
变量:在程序运行过程中,值会发生变化的量。
常量:在程序运行过程中,值不会发生变化的量。
无论是变量还是常量,在创建时都会在内存中开辟一块空间,用于保存它的值。
# 变量
在 Python 中,变量需要下面几点特性:
- Python 中的变量不需要声明类型。
- 每个变量在使用前都必须赋值,变量赋值以后才会被创建。
- Python 中,一切事物都是对象,变量引用的是对象或者说是对象在内存中的地址。
- Python 中,变量本身没有数据类型的概念,通常所说的「变量类型」是变量所引用的对象的类型,或者说是变量的值的类型。
上面第二条很重要:Python 中的一切都是对象,变量是对象的引用。
举个例子:
- 执行
s1 = '张三'
,解释器创建字符串'张三'
对象和变量s1
,并把s1
指向'张三'
对象; - 执行
s2 = s1
,解释器创建变量s2
,并且将其指向变量s1
指向的字符串'张三'
对象; - 执行
s1 = '李四'
,解释器创建字符串李四
对象,并把s1
改为指向李四
对象,与s2
无关。
(一切都是对象,变量是对象的引用)
# 常量
常量就是不变的变量,比如常用的数学常数圆周率就是一个常量。在 Python 中,通常用全部大写的变量名表示常量:
PI = 3.14159265359
1
但事实上,从 Python 语法角度看,PI 仍然是一个变量,因为 Python 根本没有任何机制保证 PI 不会被改变。你完全可以给 PI 赋值为 10,不会弹出任何错误。所以,用全部大写的变量名表示常量只是一个习惯上的用法。
常量通常放置在代码的最上部,并作为全局使用。
(完)