內建常數

有一小部分的常數存在於內建命名空間中。他們是:

False

bool 型別中的 false 值。對於 False 的賦值是不合法的,並且會拋出 SyntaxError

True

bool 型別中的 true 值。對於 True 的賦值是不合法的,並且會拋出 SyntaxError

None

型別 NoneType 的唯一值。None 經常被使用來表達缺少值,例如未傳送預設的引數至函式時,相對應參數即會被賦予 None。對於 None 的賦值是不合法的,並且會拋出 SyntaxErrorNone 是型別 NoneType 的唯一實例。

NotImplemented

會被二元特殊方法 (binary special methods)(如:__eq__()__lt__()__add__()__rsub__() 等)所回傳的特殊值,代表著該運算沒有針對其他型別的實作。同理也可以被原地二元特殊方法 (in-place binary special methods) (如:__imul__()__iand__() 等)回傳。它不應該被作為 boolean(布林)來解讀。NotImplemented 是型別 types.NotImplementedType 的唯一實例。

備註

當一個二元 (binary) 或原地 (in-place) 方法回傳 NotImplemented,直譯器會嘗試反映該操作到其他型別(或是其他後援 (fallback),取決於是哪種運算子)。如果所有的常識都回傳 NotImplemented,直譯器會拋出適當的例外。不正確的回傳 NotImplemented 會造成誤導的錯誤訊息或是 NotImplemented 值被傳回到 Python 程式碼中。

請參見 实现算术运算 以找到更多範例。

備註

NotImplementedErrorNotImplemented 並不一樣且不可互換。即使它們有相似的名稱與用途。欲知更多如何使用它們的細節,請參見 NotImplementedError

3.9 版更變: 在 boolean(布林)上下文中解讀 NotImplemented 已經被棄用。雖然目前會被解讀成 true,但會發出一個 DeprecationWarning。在未來版本的 Python 將會拋出 TypeError

Ellipsis

與刪節號 "..." 字面相同。為一特殊值,大多用於結合使用者定義資料型別的延伸切片語法 (extended slicing syntax)。Ellipsis 是型別 types.EllipsisType 的唯一實例。

__debug__

如果 Python 沒有被以 -O 選項啟動,則此常數為 true。請參見 assert 陳述式。

備註

NoneFalseTrue,以及 __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)。

credits

當印出或是呼叫此物件時,分別會印出版權與致謝的文字。

license

當印出此物件時,會印出訊息 "Type license() to see the full license text" 。當被呼叫時,則會以分頁形式印出完整的許可證文字(一次一整個畫面)。