`tomllib`和`tomlkit`都是Python的TOML解析库,但它们有一些不同的特性和用途¹。
- `tomllib`:这个库主要用于读取配置文件或写入一些输出,而不太关心格式化¹。`tomllib`只支持读取,对于写入功能,有一个配套的库`tomli-w`¹。`tomllib`明确地符合TOML v1.0¹。相比于`TOMLKit`,`tomllib`的速度要快得多¹。
- `tomlkit`:这个库支持保留样式的往返解析¹。如果你需要往返解析并保留样式和注释,那么`tomlkit`会是一个好选择¹。此外,`tomlkit`是为了处理`poetry`工具的TOML解析而创建的¹。由于`poetry`是最受欢迎的新PEP517和PEP518 Python构建系统之一,因此`tomlkit`的广泛使用和持续维护提供了一定的保障¹。
总的来说,你应该根据你的项目需求来选择使用哪个库¹。
源: 与必应的对话, 2023/11/14
(1) Comparison of Python TOML parser libraries - DEV Community. https://dev.to/pypyr/comparison-of-python-toml-parser-libraries-595e.
(2) Python 3.11 Preview: TOML and tomllib – Real Python. https://realpython.com/python311-tomllib/.
(3) tomllib — Parse TOML files — Python 3.12.0 documentation. https://docs.python.org/3/library/tomllib.html.
(4) undefined. https://github.com/avakar/pytoml/issues/15%29.