tomllib --- Parse TOML files¶
バージョン 3.11 で追加.
ソースコード: Lib/tomllib
This module provides an interface for parsing TOML (Tom's Obvious Minimal Language, https://toml.io). This module does not support writing 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¶
Subclass of
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( |
ローカルの日時 |
datetime.datetime( |
ローカルの日付 |
datetime.date |
ローカルの時刻 |
datetime.time |
array |
list |
テーブル |
辞書 |
インラインテーブル |
辞書 |
テーブルの配列 |
辞書のリスト |