內建常量¶
少量常量存在於內建名稱空間中。它們是:
- False¶
bool
型別的假值。 對False
的賦值是非法的,並會引發SyntaxError
。
- True¶
bool
型別的真值。 對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
已被棄用。 雖然它目前被求值為 true,但它將發出DeprecationWarning
。 在未來的 Python 版本中,它將引發TypeError
。
- Ellipsis¶
與省略號字面量 “
...
” 相同。 主要與使用者定義的容器資料型別的擴充套件切片語法結合使用的特殊值。Ellipsis
是types.EllipsisType
型別的唯一例項。
注意
名稱 None
,False
,True
和 __debug__
不能被重新賦值(即使作為屬性名稱對其進行賦值也會引發 SyntaxError
),因此它們可以被認為是“真正的”常量。
site
模組新增的常量¶
site
模組(在啟動期間會自動匯入,除非給定了 -S
命令列選項)會在內建名稱空間中新增幾個常量。 它們對於互動式直譯器 shell 非常有用,不應在程式中使用。
- quit(code=None)¶
- exit(code=None)¶
當列印時,會列印類似“使用 quit() 或 Ctrl-D (即 EOF) 退出”的訊息,並在呼叫時,使用指定的退出程式碼引發
SystemExit
的物件。
- help
當列印時,會列印訊息 “Type help() for interactive help, or help(object) for help about object.” 的物件,並在呼叫時,充當
其他地方
所描述的行為。
- license¶
當列印時,會列印訊息 “Type license() to see the full license text”,並在呼叫時,以類似分頁的方式(一次一個螢幕)顯示完整許可證文字的物件。