內建常數¶
有一小部分的常數存在於內建命名空間中。他們是:
- False¶
在
bool
型別中的 false 值。對於False
的賦值是不合法的,並且會拋出SyntaxError
。
- True¶
在
bool
型別中的 true 值。對於True
的賦值是不合法的,並且會拋出SyntaxError
。
- None¶
通常被用来代表空值的对象,例如未向某个函数传入默认参数时。 向
None
赋值是非法的并会引发SyntaxError
。None
是NoneType
类型的唯一实例。
- NotImplemented¶
一个应当由双目运算特殊方法(如
__eq__()
,__lt__()
,__add__()
,__rsub__()
等)返回的特殊值,用来表明该运算没有针对其他类型的实现;也可由原地双目运算特殊方法(如__imul__()
,__iand__()
等)出于同样的目的而返回。 它不应在布尔上下文中被求值。NotImplemented
是types.NotImplementedType
类型的唯一实例。備註
当一个双目(或原地)方法返回
NotImplemented
时解释器将尝试对另一种类型(或其他回退操作,具体取决于所用的运算符)的反射操作。 如果所有尝试都返回NotImplemented
,解释器将引发适当的异常。 错误地返回NotImplemented
将导致误导性的错误消息或NotImplemented
值被返回给 Python 代码。請參見 實作算術操作 以找到更多範例。
備註
NotImplementedError
和NotImplemented
不可相互替代,即使它们有相似的名称和用途。 请参阅NotImplementedError
了解其使用细节。在 3.9 版的變更: 在布尔上下文件中对
NotImplemented
求值的操作已被弃用。 虽然它目前会被求解为真值,但将同时发出DeprecationWarning
。 它将在未来的 Python 版本中引发TypeError
。
- Ellipsis¶
與刪節號 "
...
" 字面相同。為一特殊值,大多用於結合使用者定義資料型別的延伸切片語法 (extended slicing syntax)。Ellipsis
是型別types.EllipsisType
的唯一實例。
備註
None
,False
,True
,以及 __debug__
都是不能被重新賦值的(任何對它們的賦值,即使是屬性的名稱,也會拋出 SyntaxError
)。因此,它們可以被視為”真正的”常數。
由 site
module(模組)所添增的常數¶
site
module(模組)(在啟動期間自動 import ,除非有給予 -S
指令行選項)會添增一些常數到內建命名空間 (built-in namespace) 中。它們在互動式直譯器中是很有幫助的,但不應該在程式 (programs) 中被使用。
- quit(code=None)¶
- exit(code=None)¶
當印出物件時,會印出一個訊息: "Use quit() or Ctrl-D (i.e. EOF) to exit" 。當被呼叫時,則會拋出
SystemExit
並帶有指定的返回碼(exit code)。
- license¶
當印出此物件時,會印出訊息 "Type license() to see the full license text" 。當被呼叫時,則會以分頁形式印出完整的許可證文字(一次一整個畫面)。