A format-preserving TOML reader and writer for Python.
Parse a document, edit it, dump it, and the bytes you didn't touch round-trip exactly — comments, whitespace, string style, and number formatting all intact.
import tomlrt
with open("pyproject.toml", "rb") as f:
doc = tomlrt.load(f)
doc["project"]["version"] = "0.2.0"
doc["project"]["dependencies"].append("requests>=2")
print(tomlrt.dumps(doc)) # comments and layout are preservedBuild a document from scratch:
import tomlrt
doc = tomlrt.document({"project": {"name": "demo", "version": "0.1.0"}})
print(tomlrt.dumps(doc))Full docs at https://dimbleby.github.io/tomlrt/: