内置常量 — Python 文档
内置常量
少量常量存在于内置命名空间中。 他们是:
- False
- bool 类型的假值。 对
False
的赋值是非法的,并引发 SyntaxError。
- True
- bool 类型的真实值。 对
True
的赋值是非法的,并引发 SyntaxError。
- None
NoneType
类型的唯一值。None
经常用于表示没有值,因为默认参数没有传递给函数。 对None
的赋值是非法的,并引发 SyntaxError。
- NotImplemented
应由二进制特殊方法返回的特殊值(例如
__eq__()
、__lt__()
、__add__()
、__rsub__()
等)表示该操作未针对其他类型实现; 可以由就地二进制特殊方法返回(例如__imul__()
、__iand__()
等)用于相同目的。 不应在布尔上下文中对其进行评估。笔记
当二进制(或就地)方法返回
NotImplemented
时,解释器将尝试对其他类型的反射操作(或其他一些回退,取决于运算符)。 如果所有尝试都返回NotImplemented
,解释器将引发适当的异常。 错误地返回NotImplemented
将导致误导性错误消息或NotImplemented
值返回给 Python 代码。有关示例,请参阅 实现算术运算 。
笔记
NotImplementedError
和NotImplemented
不可互换,即使它们具有相似的名称和用途。 有关何时使用它的详细信息,请参阅 NotImplementedError。3.9 版更改: 在布尔上下文中评估
NotImplemented
已弃用。 虽然它当前评估为 true,但它会发出 DeprecationWarning。 它会在 Python 的未来版本中引发 TypeError。
- Ellipsis
- 与省略号文字“
...
”相同。 特殊值主要与用户定义的容器数据类型的扩展切片语法结合使用。
笔记
名称 None、False、True 和 __debug__ 不能重新分配(分配给它们,即使作为属性名称,也会引发 [X154X ]SyntaxError),所以它们可以被认为是“真正的”常量。
site 模块添加的常量
site 模块(在启动期间自动导入,除非给出了 -S 命令行选项)向内置命名空间添加了几个常量。 它们对于交互式解释器 shell 很有用,不应在程序中使用。
- quit(code=None)
exit(code=None)
- 对象在打印时,会打印出类似“Use quit() 或 Ctrl-D(即 EOF) 退出”,并在调用时使用指定的退出代码引发 SystemExit。
- copyright
credits
- 打印或调用时分别打印版权或署名文本的对象。
- license
- 打印时打印消息“Type license() 以查看完整许可证文本”的对象,并在调用时以类似寻呼机的方式(一次一个屏幕)显示完整的许可证文本。