sys -- システム固有関数¶
このモジュールは、該当する :term:`CPython` モジュールのサブセットを実装しています。
詳しくはオリジナルの CPython ドキュメンテーションを参照してください: sys.
関数¶
-
sys.exit(retval=0, /)¶ 与えた終了コードで現在のプログラムを終了します。基本的に、この関数は
SystemExit例外を起こします。引数を与えた場合、その値はSystemExitに引数として与えられます。
-
sys.atexit(func)¶ Register func to be called upon termination. func must be a callable that takes no arguments, or
Noneto disable the call. Theatexitfunction will return the previous value set by this function, which is initiallyNone.CPython との違い
This function is a MicroPython extension intended to provide similar functionality to the
atexitmodule in CPython.
-
sys.print_exception(exc, file=sys.stdout, /)¶ トレースバックを使用して例外をファイルライクなオブジェクト file (またはデフォルトの
sys.stdout)に出力します。CPython との違い
これは CPython の
tracebackモジュールにある関数の簡略版です。traceback.print_exception()とは異なり、この関数は例外型、例外値、トレースバックオブジェクトの代わりに例外値だけをとります。 file 引数は位置パラメータでなければなりません。この他の引数はサポートされていません。CPython 互換のtracebackモジュールはmicropython-libにあります。
定数¶
-
sys.argv¶ 現在のプログラム開始時の引数の変更可能なリスト。
-
sys.byteorder¶ システムのバイト順(
"little"または"big")。
-
sys.implementation¶ 現在の Python 実装に関する情報を持つオブジェクト。MicroPython では次の属性を持ちます:
- name - 文字列 "micropython"
- version - タプル (major, minor, micro)。例: (1, 7, 0)
このオブジェクトは、MicroPython を他の Python 実装と区別する推奨手段です(しかし、最小限のポートには存在しないことに注意してください)。
CPython との違い
CPython ではこのオブジェクトにもっと多くの属性がありますが、MicroPython では実際に有用となる最低限のものだけを実装しています。
-
sys.maxsize¶ 現在のプラットフォームでネイティブ整数型が保持できる最大値、またはプラットフォームの最大値より小さい場合は MicroPython 整数型で表現可能な最大値(MicroPython ポートで long int をサポートしないとした場合)。
この属性は、プラットフォームの「ビット数」(32ビットか64ビットかなど)を検出するのに便利です。この属性をある値と直接比較するのよりも、その属性のビット数をカウントすることをお勧めします。
bits = 0 v = sys.maxsize while v: bits += 1 v >>= 1 if bits > 32: # 64ビット(以上)のプラットフォーム ... else: # 32ビット(以下)のプラットフォーム # 32ビットプラットフォームでは、上記の特性によってビットの値が32未満 # (たとえば31)になる可能性があるので、 "> 16", "> 32", "> 64" の # の比較スタイルを使用してください。
-
sys.modules¶ 読み込まれたモジュールの辞書。一部のポートでは、組込みモジュールが含まれていない可能性があります。
-
sys.path¶ import するモジュールを検索するディレクトリの変更可能なリスト。
-
sys.platform¶ MicroPython が実行されているプラットフォーム。OS/RTOS ポートの場合、これは通常
"linux"など OS の識別子となります。ベアメタルポートの場合はボードの識別子となります。オリジナルの MicroPython リファレンスボードでは"pyboard"となります。したがって、これはあるボードを別のボードと区別するために使用できます。あなたのプログラムが MicroPython 上で実行されているのか(それとも他の Python 実装で動いているのか)を確認する必要がある場合は代わりにsys.implementationを使ってください。
-
sys.version¶ この実装が準拠する Python 言語バージョン。
-
sys.version_info¶ この実装が準拠している Python 言語バージョンを表す int の タプル。
CPython との違い
Only the first three version numbers (major, minor, micro) are supported and they can be referenced only by index, not by name.