3. 組み込み定数¶
組み込み名前空間にはいくつかの定数があります。定数の一覧:
-
False
¶ bool
型の偽値です。False
への代入は不正で、SyntaxError
を送出します。
-
True
¶ bool
型の真値です。True
への代入は不正で、SyntaxError
を送出します。
-
None
¶ 型
NoneType
の唯一の値です。None
は、関数にデフォルト引数が渡されなかったときなどに、値の非存在を表すのに頻繁に用いられます。None
への代入は不正で、SyntaxError
を送出します。
-
NotImplemented
¶ 特殊な二項演算のメソッド (e.g.
__eq__()
,__lt__()
,__add__()
,__rsub__()
, etc.) が、他の型に対して演算が実装されていないことを示すために返す特殊値です。インプレースの特殊な二項演算のメソッド (e.g.__imul__()
,__iand__()
, etc.) も同じ理由でこの値を返すことがあります。真偽値は真です。注釈
二項演算の (あるいはインプレースの) メソッドが
NotImplemented
を返した場合、インタープリタはもう一方の型で定義された対の演算で代用を試みます (あるいは演算によっては他の代替手段も試みます)。試行された演算全てがNotImplemented
を返した場合、インタープリタは適切な例外を送出します。NotImplemented
を正しく返さないと、誤解を招きかねないエラーメッセージになったり、NotImplemented
が Python コードに返されるようなことになります。例として 算術演算の実装 を参照してください。
注釈
NotImplementedError
とNotImplemented
は、似たような名前と目的を持っていますが、相互に変換できません。 利用する際には、NotImplementedError
を参照してください。
-
Ellipsis
¶ Ellipsis リテラル "
...
" と同じです。 主に拡張スライス構文やユーザ定義のコンテナデータ型において使われる特殊な値です。
注釈
名前 None
、 False
、 True
、 __debug__
は再代入できない (これらに対する代入は、たとえ属性名としてであっても SyntaxError
が送出されます) ので、これらは「真の」定数であると考えられます。
3.1. 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画面分づつ) 表示するオブジェクトです。