組み込み定数¶
組み込み名前空間にはいくつかの定数があります。定数の一覧:
- False¶
bool
型の偽値です。False
への代入は不正で、SyntaxError
を送出します。
- True¶
bool
型の真値です。True
への代入は不正で、SyntaxError
を送出します。
- None¶
関数にデフォルト引数が渡されなかったときなどに、値の非存在を表すのに頻繁に用いられるオブジェクトです。
None
への代入は不正で、SyntaxError
を送出します。None
がNoneType
型の唯一のインスタンスです。
- NotImplemented¶
特殊な二項演算のメソッド (e.g.
__eq__()
,__lt__()
,__add__()
,__rsub__()
, etc.) が、他の型に対して演算が実装されていないことを示すために返す特殊値です。インプレースの特殊な二項演算のメソッド (e.g.__imul__()
,__iand__()
, etc.) も同じ理由でこの値を返すことがあります。この処理では真偽値コンテキストでの評価はしてはいけません。NotImplemented
がtypes.NotImplementedType
型の唯一のインスタンスです。注釈
二項演算の (あるいはインプレースの) メソッドが
NotImplemented
を返した場合、インタープリタはもう一方の型で定義された対の演算で代用を試みます (あるいは演算によっては他の代替手段も試みます)。試行された演算全てがNotImplemented
を返した場合、インタープリタは適切な例外を送出します。NotImplemented
を正しく返さないと、誤解を招きかねないエラーメッセージになったり、NotImplemented
が Python コードに返されるようなことになります。例として 算術演算の実装 を参照してください。
注釈
NotImplementedError
とNotImplemented
は、似たような名前と目的を持っていますが、相互に変換できません。 利用する際には、NotImplementedError
を参照してください。バージョン 3.9 で変更:
NotImplemented
の評価は非推奨です。 現時点で真と評価されていてもDeprecationWarning
が出ます。 この警告は将来のバージョンの Python でTypeError
を送出します。
- Ellipsis¶
Ellipsis リテラル "
...
" と同じです。 主に拡張スライス構文やユーザ定義のコンテナデータ型において使われる特殊な値です。Ellipsis
がtypes.EllipsisType
型の唯一のインスタンスです。
注釈
名前 None
、 False
、 True
、 __debug__
は再代入できない (これらに対する代入は、たとえ属性名としてであっても SyntaxError
が送出されます) ので、これらは「真の」定数であると考えられます。
site
モジュールで追加される定数¶
site
モジュール (-S
コマンドラインオプションが指定されない限り、スタートアップ時に自動的にインポートされます) は組み込み名前空間にいくつかの定数を追加します。それらは対話的インタープリタシェルで有用ですが、プログラム中では使うべきではありません。
- quit(code=None)¶
- exit(code=None)¶
表示されたときに "Use quit() or Ctrl-D (i.e. EOF) to exit" のようなメッセージを表示し、呼び出されたときには指定された終了コードを伴って
SystemExit
を送出するオブジェクトです。
- license¶
表示されたときに "Type license() to see the full license text" というメッセージを表示し、呼び出されたときには完全なライセンスのテキストをページャのような形式で (1画面分づつ) 表示するオブジェクトです。