tomllib — Parse TOML files¶
Added in version 3.11.
Source code: Lib/tomllib
This module provides an interface for parsing TOML 1.0.0 (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)¶
Read a TOML file. The first argument should be a readable and binary file object. Return a
dict. Convert TOML types to Python using this conversion table.parse_float will be called with the string of every TOML float to be decoded. By default, this is equivalent to
float(num_str). This can be used to use another datatype or parser for TOML floats (e.g.decimal.Decimal). The callable must not return adictor alist, else aValueErroris raised.A
TOMLDecodeErrorwill be raised on an invalid TOML document.
- tomllib.loads(s, /, *, parse_float=float)¶
Load TOML from a
strobject. Return adict. Convert TOML types to Python using this conversion table. The parse_float argument has the same meaning as inload().A
TOMLDecodeErrorwill be raised on an invalid TOML document.
The following exceptions are available:
- exception tomllib.TOMLDecodeError¶
Subclass of
ValueError.
Приклади¶
Parsing a TOML file:
import tomllib
with open("pyproject.toml", "rb") as f:
data = tomllib.load(f)
Parsing a TOML string:
import tomllib
toml_str = """
python-version = "3.11.0"
python-implementation = "CPython"
"""
data = tomllib.loads(toml_str)
Conversion Table¶
TOML |
Python |
|---|---|
TOML document |
дикт |
рядок |
вул |
ціле число |
int |
плавати |
float (configurable with parse_float) |
логічний |
bool |
offset date-time |
datetime.datetime ( |
local date-time |
datetime.datetime ( |
local date |
datetime.date |
local time |
datetime.time |
масив |
список |
table |
дикт |
inline table |
дикт |
array of tables |
list of dicts |