Python 3.9中能否使用pip自带的TOML解析器,无需额外安装包?
Python 3.9解析TOML文件的方案
1. 无额外包解析TOML?不行
Python标准库中内置的TOML解析器tomllib是从Python 3.11才开始提供的,3.9版本没有这个模块,必须安装第三方包才能解析TOML。常用的第三方包有:
tomli:这是tomllib的前身,完全兼容3.11的tomllibAPI,适合3.11以下版本使用,安装命令:pip install tomlitoml:另一个成熟的TOML解析库,支持读写TOML文件,安装命令:pip install toml
2. 能不能用pip内置的TOML解析器?不建议
pip内部确实有处理pyproject.toml的TOML解析逻辑,但pip的内部模块(比如pip._vendor.tomli)属于未公开的私有API,不允许外部代码导入使用:
- pip的内部API没有向后兼容性承诺,版本升级后可能随时变更或移除相关模块,导致你的代码崩溃
- 这些模块是为pip自身的需求设计的,功能可能不全或不符合通用TOML解析的场景
综上,在Python 3.9中解析TOML,最稳妥的方式是安装tomli或toml这类第三方包,不要依赖pip的内部模块。
内容的提问来源于stack exchange,提问作者Arthur Hebert-Ryan
相关产品推荐
相关产品推荐

