Python
- 基础
-
库
- 其他
- argparse命令行参数解析
- asyncio自带异步编程库
- aiofiles异步文件读写库
- beautifulsoup4_HTML_XML解析库
- colorama_在终端输出漂亮的字
- datasets数据集处理
- html2text
- httpx_HTTP请求库
- litellm
- loguru日志库
- numpy科学计算基础库
- pillow图像处理
- pydantic数据验证
- pyyaml
- requests_HTTP请求库
- tenacity重试
- tiktoken计算Token量
- torch机器学习_深度学习框架
- tomli TOML文件解析库
- tomllib 自带TOML文件解析库
- unidiff_文本_文件差异对比
- uvicorn_Web服务器
- langchain
**tomli 是一个用于解析 TOML 格式文件的 Python 库,功能类似于标准库中的 json 模块,但专门用于处理 TOML 格式的数据。**
---
## 一、tomli 是什么?(简单理解)
- TOML 是一种**轻量级的配置文件格式**,语法清晰易读,常用于替代 INI 或 JSON 作为项目的配置文件(比如 Python 的 pyproject.toml)。
- **tomli 的作用就是:在 Python 中读取和解析 TOML 格式的文件或字符串,将其转换为 Python 字典(dict),方便程序使用。**
- 它是**只读的**(只能解析 TOML,不能生成 TOML),如果需要生成 TOML 文件,可以使用另一个库叫 **tomli-w**。
---
## 二、tomli 解决什么问题?
在 Python 项目中,我们经常需要:
- 读取配置文件(如 pyproject.toml、config.toml)
- 这些文件通常是 **TOML 格式**
- 但 Python **内置没有直接解析 TOML 的模块**(不像 JSON 有 `json` 模块)
**tomli 的作用就是:**
> 让 Python 可以像解析 JSON 一样,轻松解析 TOML 文件,把 TOML 内容转换成 Python 字典,方便程序读取配置或数据。
---
## 三、安装 tomli
使用 pip 安装:
```bash
pip install tomli
```
---
## 四、tomli 基本使用示例
### 示例:解析 TOML 文件
假设有一个 `config.toml` 文件,内容如下:
```toml
title = "示例配置"
[owner]
name = "张三"
age = 30
[database]
server = "192.168.1.1"
ports = [8000, 8001, 8002]
```
你可以用 tomli 读取它:
```python
import tomli
with open("config.toml", "rb") as f:
data = tomli.load(f)
print(data["title"]) # 输出:示例配置
print(data["owner"]["name"]) # 输出:张三
print(data["database"]["ports"]) # 输出:[8000, 8001, 8002]
```
> ⚠️ 注意:`tomli.load()` 需要以 **二进制模式("rb")** 打开文件。
---
## 五、tomli 常见用途
| 用途 | 说明 |
|------|------|
| 读取项目的 pyproject.toml | 解析 Python 项目的标准配置文件 |
| 读取自定义配置文件 | 用 TOML 格式写的配置,可以用 tomli 解析 |
| 替代手动解析或正则 | 比自己写代码解析 TOML 更安全可靠 |
| 与静态类型工具配合 | 常用于构建工具、CLI 工具、包配置等场景 |
---
## 六、tomli 与其它库的关系
| 库名 | 作用 |
|------|------|
| **tomli** | **解析(读取)TOML 文件,只读** |
| **tomli-w** | **生成(写入)TOML 文件,是 tomli 的配套写入库** |
| **pytomlpp / tomlkit** | 其它 TOML 解析库,功能可能更丰富,但 tomli 更轻量和标准 |
> Python 3.11+ 开始,官方内置了 `tomllib` 模块(功能与 tomli 几乎一样),如果你用的是 Python 3.11 或更高版本,可以直接用 `import tomllib`,无需安装 tomli。
---
## 七、总结(中文)
> **tomli 是一个用于解析 TOML 文件的 Python 库,可以将 TOML 格式的数据转换成 Python 字典,方便读取配置信息。它简单易用,是处理 pyproject.toml 或自定义 TOML 配置文件的推荐工具。**
---
✅ **简单来说:**
> 如果你需要在 Python 中**读取 TOML 格式的配置文件**(比如 pyproject.toml 或其他 .toml 文件),**tomli 就是帮你把 TOML 内容解析成字典的工具,使用简单,功能可靠。**
> (Python 3.11+ 可直接用内置的 `tomllib`,效果类似)