Python 常量是什么
在 Python 中,常量指的是一个值不能改变的量。也就是说,常量的值从定义开始就是固定的,一直到程序结束都不会改变。
常量,形象来说就像千百年来约定俗成的名称。这个名称是定下来的,而不能随便改变。比如我们都叫做 “人”,总不能把你叫做 “猪”,对吧?
需要注意的是,Python 中的常量本质上还是 “变量” ,只不过我们是不会刻意去修改它的值的。一般情况下,常量名为全部大写,别人一看就知道这个值很特殊,有特殊用途,比如:
DEBUG = 1Python 常量的特点
在 Python 中,常量具有以下 2 个特点。
- 常量通常使用纯大写字母表示,以区分于普通变量。
- 常量的值是不可变的,一旦被赋值不应该被修改(即使你可以修改它)。
示例:使用 Python 常量
PI = 3.1415
print(PI)运行结果如下。
3.1415分析:
Python 中没有真正的常量,所谓的常量本质上还是一个变量,你可以将其看成是名为为纯大写的变量。对于上面例子来说,实际上我们依然可以修改 PI 的值,比如:
PI = 3.1415
PI = 3.14 # 尝试将常量 PI 的值修改为 3.14
print(PI) # 输出:3.14不过在实际开发中,我们看到纯大写名字时就应该清楚它是一个常量,就不要再去修改它的值了。
Python 内置常量
Python 还有内置的常量,不过数量不多(只有 6 个),分别是:
- True
- False
- None
- NotImplemented
- Ellipsis
- __debug__
一般情况下只会用到 True、False、None 这 3 个,其他 3 个极少会用到。
typing 模块
虽然 Python 默认没有严格限制常量不能被修改,但在较新的 Python 版本(3.8 及以上)中,引入了 typing 模块的 Final 类型提示。高级开发者经常用它来告诉代码检查工具:“这个变量是一个常量,请不要让它被修改!”
当然,对于初学的小伙伴来说,我们目前只要记住 “纯大写就是常量,别去动它” 就足够啦。
