tomllib — разбор файлов TOML
Добавлено в версии 3.11.
Исходный код: Lib/tomllib
Этот модуль предоставляет интерфейс для разбора TOML 1.0.0 (Tom’s Obvious Minimal Language, https://toml.io). Этот модуль не поддерживает запись TOML.
См. также
Пакет Tomli-W предназначен для записи TOML и может использоваться вместе с этим модулем. Он предоставляет API для записи, знакомый пользователям стандартных библиотечных модулей marshal и pickle.
См. также
Пакет TOML Kit — библиотека TOML, сохраняющая стиль и поддерживающая чтение и запись. Она рекомендуется в качестве замены этого модуля для редактирования уже существующих файлов TOML.
Этот модуль определяет следующие функции:
-
tomllib.load(fp, /, *, parse_float=float) -
Прочитать файл TOML. Первый аргумент должен быть доступным для чтения двоичным файловым объектом. Возвращает
dict. Преобразование типов TOML в типы Python выполняется согласно этой таблице преобразования.Для каждого значения TOML с плавающей точкой, которое нужно декодировать, будет вызван параметр parse_float, которому передаётся строка. По умолчанию он эквивалентен
float(num_str). Это позволяет использовать для значений TOML с плавающей точкой другой тип данных или анализатор (например,decimal.Decimal). Вызываемый объект не должен возвращатьdictилиlist, иначе будет вызвано исключениеValueError.При обнаружении недопустимого документа TOML будет вызвано исключение
TOMLDecodeError.
-
tomllib.loads(s, /, *, parse_float=float) -
Загрузить TOML из объекта
str. Возвращаетdict. Преобразование типов TOML в типы 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 | dict |
строка | str |
целое число | int |
число с плавающей точкой | float (настраивается с помощью parse_float) |
логическое значение | bool |
дата и время со смещением | datetime.datetime (атрибут |
локальные дата и время | datetime.datetime (атрибут |
локальная дата | datetime.date |
локальное время | datetime.time |
массив | list |
таблица | dict |
встроенная таблица | dict |
массив таблиц | список dict |
© 2001–2025 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.13/library/tomllib.html