Python Glossary English

Python 3.11+tomllibфункция

tomllib.load()

чтение TOML

Читает TOML из файла, открытого в двоичном режиме, и возвращает словарь — например, pyproject.toml.

Синтаксис

with open(path, 'rb') as f: data = tomllib.load(f, *, parse_float=float)

Файл обязательно открывать как 'rb': текстовый режим даёт TypeError, зато кодировка всегда UTF-8 и ошибиться с ней нельзя. Модуль только читает — записать TOML им нельзя, для этого нужна сторонняя библиотека (tomli-w). Даты TOML превращаются в объекты datetime, а не в строки.

Примеры

import tomllib
with open('config.toml', 'w', encoding='utf-8') as f:
    f.write('[server]\nport = 8080\nhosts = ["a", "b"]\n')
with open('config.toml', 'rb') as f:
    data = tomllib.load(f)
print(data)  # → {'server': {'port': 8080, 'hosts': ['a', 'b']}}
import tomllib
open('c.toml', 'w').close()
try:
    with open('c.toml', encoding='utf-8') as f:
        tomllib.load(f)
except TypeError as e:
    print(type(e).__name__)  # → TypeError

См. также

Частые ошибки

Открыть в полном глоссарииdocs.python.orgСообщить о неточности