tomllib --- 解� TOML 文件¶

在 3.11 版本加入.

�代�: Lib/tomllib


这个模��供了一个解� TOML (Tom's Obvious Minimal Language, https://toml.io)接�。该模��支�写 TOML。

��

包 Tomli-W package 是一个 TOML writer,�以与该模�一起使用,其�供了标准库用户熟悉的 marshal 和 pickle 模�相似的写 API。

��

TOML Kit 包 是一个兼具读和写功能的��样�的 TOML 库。推�使用此模�编辑已�存在的 TOML 文件。

这个模�定义了以下函数:

tomllib.load(fp, /, *, parse_float=float)¶

读�一个 TOML 文件。第一个�数应该是一个�读的二进制文件对象。返回 dict。使用 转�表 将 TOML 类型转�为 Python。

对�个�解�的 TOML 浮点数字符串调用 parse_float。默认情况下,这相当于 float(num_str)。这�以用于为 TOML 浮点数使用�一�数�类型或解�器(例如:decimal.Decimal)。�调用对象�能返回 dict 或 list,�则将引� ValueError。

对无效的 TOML 文档将引� TOMLDecodeError。

tomllib.loads(s, /, *, parse_float=float)¶

从 str 对象中加载 TOML。返回 dict。使用 转�表 将 TOML 类型转�为 Python类型。�数 parse_float 与 load() 中的�义相�。

对无效的 TOML 文档将引� TOMLDecodeError。

有以下几�异常:

exception tomllib.TOMLDecodeError¶

ValueError 的�类

例�¶

解� TOML 文件:

import tomllib

with open("pyproject.toml", "rb") as f:
    data = tomllib.load(f)

解� TOML 字符串:

import tomllib

toml_str = """
python-version = "3.11.0"
python-implementation = "CPython"
"""

data = tomllib.loads(toml_str)

转�表¶

TOML

Python

TOML 文档

dict

string

str

integer

int

float

float(�用 parse_float �置)

boolean

bool

offset date-time

datetime.datetime(tzinfo 属性设置为 datetime.timezone 的实例)

local date-time

datetime.datetime (tzinfo 属性设置为 None)

local date

datetime.date

local time

datetime.time

array

list

table

dict

内�表

dict

表数组

字典列表