Python ランタイムサービス
*************************

この章で説明するモジュールは、Python インタープリタや、インタープリタ
と環境とのやり取りに関する幅広い機能を提供します。 以下に概要を示しま
す。

* "sys" --- システム固有のパラメーターと関数

* "sys.monitoring" --- 実行イベントモニタリング

  * ツール識別子

    * ツールの登録と使用

  * イベント

    * ローカルイベント

    * 非推奨のイベント

    * 付随するイベント

    * その他のイベント

    * STOP_ITERATION イベント

  * イベントの有効化と無効化

    * イベントのグローバルな設定

    * コードオブジェクトごとのイベント

    * イベントの無効化

  * コールバック関数の登録

    * コールバック関数の引数

* "sysconfig" --- Python の構成情報へのアクセスを提供する

  * 構成変数

  * インストールパス

  * ユーザースキーム

    * "posix_user"

    * "nt_user"

    * "osx_framework_user"

  * ホームスキーム

    * "posix_home"

  * プレフィックススキーム

    * "posix_prefix"

    * "nt"

  * インストールパスの関数

  * その他の関数

  * コマンドラインでの使用

* "builtins" --- 組み込みオブジェクト

* "__main__" --- トップレベルのコード環境

  * "__name__ == '__main__'"

    * 「トップレベルのスクリプト環境」とは

    * 通常の使われ方

    * パッケージングで考慮すべき点

  * Python パッケージの "__main__.py"

    * 通常の使われ方

  * "import __main__"

* "warnings" --- 警告の制御

  * 警告カテゴリ

  * 警告フィルタ

    * 警告の繰り返しを抑制する基準

    * 警告フィルタの指定方法

    * デフォルトの警告フィルタ

    * デフォルトのフィルタの上書き

  * 一時的に警告を抑制する

  * 警告のテスト

  * 依存先の新しいバージョンに合わせたコードの更新

  * 利用可能な関数

  * 利用可能なコンテキストマネージャー

  * コンテキストマネージャーの並行処理の安全性

* "dataclasses" --- データクラス

  * モジュールの内容

  * 初期化後の処理

  * クラス変数

  * 初期化限定変数

  * 凍結されたインスタンス

  * 継承

  * "__init__()" のキーワード専用パラメータの並べ替え

  * デフォルトファクトリ関数

  * 可変なデフォルト値

  * デスクリプタ型のフィールド

* "contextlib" --- "with" 文コンテキスト用ユーティリティ

  * ユーティリティ

  * 例とレシピ

    * 可変数個のコンテキストマネージャーをサポートする

    * "__enter__" メソッドからの例外をキャッチする

    * "__enter__" 実装内のクリーンアップ

    * "try-finally" + flag 変数パターンを置き換える

    * コンテキストマネージャーを関数デコレーターとして使う

  * 単回使用、再利用可能、およびリエントラントなコンテキストマネージャ

    * リエントラントなコンテキストマネージャ

    * 再利用可能なコンテキストマネージャ

* "abc" --- 抽象基底クラス

* "atexit" --- 終了ハンドラー

  * "atexit" の使用例

* "traceback" --- スタックトレースの表示または取得

  * モジュールレベルの関数

  * "TracebackException" オブジェクト

  * "StackSummary" オブジェクト

  * "FrameSummary" オブジェクト

  * モジュールレベルの関数の使用例

  * "TracebackException" の使用例

* "__future__" --- future 文の定義

  * モジュールコンテンツ

* "gc" --- ガベージコレクターインターフェース

* "inspect" --- 活動中のオブジェクトを調査する

  * 型とメンバー

  * ソースコードの情報取得

  * Signature オブジェクトで呼び出し可能オブジェクトを内省する

  * クラスと関数

  * インタープリタスタック

  * 属性の静的なフェッチ

  * ジェネレータ、コルーチン、非同期ジェネレータの現在の状態

  * コードオブジェクトのビットフラグ

  * バッファフラグ

  * コマンドライン・インターフェース

* "annotationlib" --- アノテーションを調べるための機能

  * アノテーションの意味論

  * クラス

  * 関数

  * レシピ

    * メタクラスでのアノテーションの利用

    * 独自の呼び出し可能オブジェクトによる annotate 関数の作成

  * "STRING" 形式の制限

  * "FORWARDREF" 形式の制限

  * アノテーションを調べる際のセキュリティへの影響

* "site" --- サイト固有の設定フック

  * パスの追加 (".pth" ファイル)

  * 起動時エントリーポイント (".start" ファイル)

  * 起動設定ファイルの例

  * ".pth" ファイルの "import" 行から ".start" ファイルへの移行

  * "sitecustomize"

  * "usercustomize"

  * readline の設定

  * モジュールの内容

  * コマンドライン・インターフェース

参考:

  * 同様にランタイムの中核機能を公開する "concurrent.interpreters" モ
    ジュールも参照してください。
