"tomllib" --- Parse TOML files
******************************

バージョン 3.11 で追加.

**ソースコード:** Lib/tomllib

======================================================================

このモジュールはTOML（Tom's Obvious Minimal Language, https://toml.io
）を解析するインターフェースを提供します。このモジュールはTOMLの書き出
しはサポートしません。

参考:

  The Tomli-W package is a TOML writer that can be used in conjunction
  with this module, providing a write API familiar to users of the
  standard library "marshal" and "pickle" modules.

参考:

  The TOML Kit package is a style-preserving TOML library with both
  read and write capability. It is a recommended replacement for this
  module for editing already existing TOML files.

このモジュールは以下の関数を定義しています:

tomllib.load(fp, /, *, parse_float=float)

   TOMLファイルを読み込みます。第1引数には読み込み可能なバイナリのファ
   イルオブジェクトを指定します。戻り値は "dict" です。TOMLの型は
   conversion table を使用してPythonのデータ型に変換されます。

   *parse_float* は、全てのデコードされる TOML の浮動小数点数文字列に
   対して呼ばれます。デフォルトでは、 "float(num_str)" と等価です。こ
   れは TOML 浮動小数点数に対して他のデータ型やパーサ (たとえば
   "decimal.Decimal") を使うのに使えます。呼び出し可能オブジェクトは
   "dict" や "list" 以外を返す必要があり、そうでない場合は
   "ValueError" が送出されます。

   無効なTOMLドキュメントの場合は "TOMLDecodeError" が送出されます。

tomllib.loads(s, /, *, parse_float=float)

   "str" からTOMLを読み込みます。戻り値は "dict" です。TOMLの型は
   conversion table を使用してPythonのデータ型に変換されます。
   *parse_float*  引数は "load()" と同じ意味を持ちます。

   無効なTOMLドキュメントの場合は "TOMLDecodeError" が送出されます。

次の例外がサポートされています:

exception tomllib.TOMLDecodeError

   "ValueError" のサブクラスです。


使用例
======

TOMLファイルを解析します:

   import tomllib

   with open("pyproject.toml", "rb") as f:
       data = tomllib.load(f)

TOMLの文字列を解析します:

   import tomllib

   toml_str = """
   python-version = "3.11.0"
   python-implementation = "CPython"
   """

   data = tomllib.loads(toml_str)


変換表
======

+--------------------+----------------------------------------------------------------------------------------+
| TOML               | Python                                                                                 |
|====================|========================================================================================|
| TOMLドキュメント   | 辞書                                                                                   |
+--------------------+----------------------------------------------------------------------------------------+
| string             | str                                                                                    |
+--------------------+----------------------------------------------------------------------------------------+
| 整数               | int                                                                                    |
+--------------------+----------------------------------------------------------------------------------------+
| 浮動小数点数       | float （*parse_float* で設定可能）                                                     |
+--------------------+----------------------------------------------------------------------------------------+
| boolean            | 真偽値型(bool)                                                                         |
+--------------------+----------------------------------------------------------------------------------------+
| オフセット付きの日 | datetime.datetime（"tzinfo" 属性は "datetime.timezone" のインスタンス が設定される）   |
| 時に日地           |                                                                                        |
+--------------------+----------------------------------------------------------------------------------------+
| ローカルの日時     | datetime.datetime（"tzinfo" 属性は "None" に設定される）                               |
+--------------------+----------------------------------------------------------------------------------------+
| ローカルの日付     | datetime.date                                                                          |
+--------------------+----------------------------------------------------------------------------------------+
| ローカルの時刻     | datetime.time                                                                          |
+--------------------+----------------------------------------------------------------------------------------+
| 配列               | リスト                                                                                 |
+--------------------+----------------------------------------------------------------------------------------+
| テーブル           | 辞書                                                                                   |
+--------------------+----------------------------------------------------------------------------------------+
| インラインテーブル | 辞書                                                                                   |
+--------------------+----------------------------------------------------------------------------------------+
| テーブルの配列     | 辞書のリスト                                                                           |
+--------------------+----------------------------------------------------------------------------------------+
