Módulo Tomllib de Python

El módulo tomllib analiza archivos de configuración TOML desde Python.

El módulo se añadió en Python 3.11. Es de solo lectura, así que úsalo para analizar TOML y no para escribirlo.

import tomllib

TOML se usa con frecuencia en archivos de configuración como pyproject.toml. Tiene el aspecto de pares clave-valor y secciones sencillas.

Analizar TOML desde una cadena

loads analiza un documento TOML almacenado en una cadena.

import tomllib

config = tomllib.loads("""
name = "python-cheatsheet"
version = "1.0"
[database]
port = 5432
""")

print(config['name'])
print(config['database']['port'])
python-cheatsheet
5432

Los valores TOML se convierten en valores de Python:

import tomllib

config = tomllib.loads("""
debug = true
ports = [8000, 8001]
""")

print(config['debug'])
print(config['ports'])
True
[8000, 8001]

Leer un archivo TOML

load espera un objeto de archivo binario.

import tomllib
from io import BytesIO

data = b'name = "demo"'
config = tomllib.load(BytesIO(data))
print(config)
{'name': 'demo'}

Si abres un archivo real, usa el modo binario:

import tomllib

with open('pyproject.toml', 'rb') as file:
    config = tomllib.load(file)

Enlaces relacionados