溪客(编程代码) 溪客(编程代码)

  • 今天是2025年08月20日 Wednesday
  • 首页
  • 知识
  • 网址
  • AI助手

Python

首页 / 知识 / Python
  • 基础
    • Conda
    • Jupyter
    • dump
    • CSharp2Python
    • 关于模块导入
    • 关于推导式
    • 关于元组
    • set和数组的区别
    • 关于Literal
    • 关于iter
    • 关于setup.py
    • 路径拼接
    • 方法命名约定
  • 库
    • 其他
    • 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
    • langchain-chatchat
    • langchain-qianfan
`tomllib` 是 Python 3.11 开始内置引入的一个标准库模块,用于**解析 TOML 格式的配置文件**。 --- ## ✅ 一、什么是 TOML? **TOML**(Tom's Obvious, Minimal Language)是一种**轻量级、易读的配置文件格式**,目标是成为比 JSON、INI 更清晰、更结构化的配置语言。 它广泛用于项目的配置文件中,比如 Python 的 `pyproject.toml` 就是使用 TOML 格式编写的。 📝 示例(一个简单的 TOML 文件内容): ```toml title = "示例配置" [server] host = "127.0.0.1" port = 8080 [database] user = "admin" password = "123456" ``` --- ## ✅ 二、`tomllib` 是什么? `tomllib` 是 Python **3.11 及以上版本**内置的标准库模块(位于 `import tomllib`),它提供了一种**官方、标准、无需安装第三方库的方式来解析 TOML 文件**。 它的主要功能是: > **将 TOML 格式的字符串或文件内容,解析为 Python 的字典(dict)对象,方便你在代码中使用。** --- ## ✅ 三、基本用法(Python 3.11+) ### 1. 从字符串解析 TOML: ```python import tomllib toml_str = """ title = "示例" [server] host = "127.0.0.1" """ data = tomllib.loads(toml_str) # 解析字符串 print(data["title"]) # 输出:示例 print(data["server"]["host"]) # 输出:127.0.0.1 ``` ### 2. 从文件读取并解析 TOML: ```python import tomllib with open("config.toml", "rb") as f: # 注意:必须是二进制模式 'rb' data = tomllib.load(f) # 解析文件内容 print(data["title"]) ``` > ⚠️ 注意:`tomllib.load()` 要求传入的是以 `'rb'`(二进制读)模式打开的文件对象,不是文本模式 `'r'`。 --- ## ✅ 四、为什么用 `tomllib`? - **官方标准库**:Python 3.11 自带,无需安装第三方包(比如之前常用的 `tomli`)。 - **轻量、安全、稳定**:作为标准库,长期维护,与 Python 生态集成更好。 - **和 `tomli` 几乎一样**:`tomllib` 实际上是 Python 官方对社区优秀第三方库 `tomli` 的采纳和内置化。 --- ## ✅ 五、如果你用的是 Python 3.10 或更低版本怎么办? 在 Python 3.11 之前,官方没有内置 `tomllib`,但你可以使用功能几乎一样的第三方库: 🔧 安装: ```bash pip install tomli ``` 📘 使用方式(和 tomllib 几乎一致,只是模块名不同): ```python import tomli with open("config.toml", "rb") as f: data = tomli.load(f) ``` > 只需把 `tomllib` 换成 `tomli` 即可。用法和功能几乎一模一样。 --- ## ✅ 六、总结(中文,简明版) | 项目 | 说明 | |------|------| | **tomllib 是什么?** | Python 3.11+ 内置的标准库模块,用于解析 TOML 格式的配置文件 | | **TOML 是什么?** | 一种易读、结构化的配置文件格式,常用于 `pyproject.toml` 等场景 | | **主要功能** | 将 TOML 文本或文件解析为 Python 字典(dict),便于程序使用 | | **使用方法** | `import tomllib`,然后使用 `tomllib.load()` 或 `tomllib.loads()` | | **注意** | 文件需用 `'rb'`(二进制模式)打开;Python 3.10 或更早版本需安装第三方库 `tomli` | --- 如你正在处理 `pyproject.toml` 或其他 TOML 配置文件,使用 `tomllib`(或 `tomli`)是最推荐的方式之一。欢迎继续提问!
© 2022 - 溪客(编程代码) - 粤ICP备10217501号 Mozilla/5.0 AppleWebKit/537.36 (KHTML, like Gecko; compatible; ClaudeBot/1.0; +claudebot@anthropic.com)