tomllib — Парсинг файлов TOML
Добавлен в версии 3.11.
Исходный код: Lib/tomllib
Этот модуль предоставляет интерфейс для парсинга файлов TOML (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, используя эту таблицу преобразований.parse_float будет вызван со строкой каждого плавающего числа TOML для декодирования. По умолчанию это эквивалентно
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 |
массив | список |
таблица | dict |
встроенная таблица | dict |
массив таблиц | список словарей |
© 2001–2024 Python Software Foundation
Licensed under the PSF License.
https://docs.python.org/3.12/library/tomllib.html