与 Java 相比,Python 缺乏定义常量的内置机制。
为了表达变量的不变性,Python 程序员通常为它指定一个全大写的名称字母:
CONST_NAME = "Name"
尽管约定表明常量应保持不变,但没有固有的保护措施来防止常量被更改。然而,外部库提供了在不断修改时引发异常的解决方案。 Alex Martelli 的“Python 中的常量”文章概述了一种这样的方法,尽管它的使用并不常见。
在 Python 3.8 中,typing.Final 注释有助于静态类型检查器(例如 mypy)来识别不应重新分配的变量。尽管有其意图,此注释并不会阻止运行时重新分配:
from typing import Final a: Final[int] = 1 # Executes without error, but mypy will report an error if run: a = 2
以上是如何在Python中定义和保护常量?的详细内容。更多信息请关注PHP中文网其他相关文章!