Python Toml:现代化的配置文件

Python Toml是一种轻量级、易读的数据序列化格式,由Tom Preston-Werner创建,广泛应用于配置文件。它支持多种数据类型如布尔值、数值、字符串和日期,并且在Python中原生支持。Toml还允许复合类型如列表和字典,以及它们的组合。相比于JSON、XML等,Toml具有更简洁直观的语法,易于阅读和编辑,因此在现代项目中受到青睐。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

TOML是一种用于配置文件的轻量级、易读的数据序列化格式。
由Tom Preston-Werner创建,旨在成为一种简单直观的配置文件语言,适用于任何编程语言环境。

TOML支持多种数据类型,包括字符串、整数、浮点数、布尔值、日期时间、数组和嵌套表等等。
TOML通常用于配置应用程序或软件的设置,例如配置数据库连接信息、网络参数、日志级别等。

在许多编程语言中,都有第三方库或原生支持,用于解析和生成TOML格式的配置文件。
Python3.11版本开始,原生支持TOML的解析,不需要再安装第三方的库。

1. 基本类型

配置项的值在TOML中也像在JSON中一样,是可以有类型的。
它说支持的基本类型主要有布尔值数值(整数,浮点数),字符串日期等几种。

1.1. 布尔值

python中的TOML模块可以加载toml格式的字符串,或者toml文件的文件流

# -*- coding: utf-8 -*-

import tomllib

# 加载toml文件
with open("./sample.toml", "rb") as f:
    data = tomllib.load(f)

print("bool_var1 = ", data["bool_var1"])
print("bool_var2 = ", data["bool_var2"])

# 运行结果
bool_var1 =  False
bool_var2 =  True

toml文件示例:sample.toml

bool_var1 = false
bool_var2 = true

1.2. 数值

数值类型分为整数浮点数两种。
整型除了10进制,也可以用16进制,8进制和2进制。

# 10进制
int_var1 = 99
int_var2 = -17
int_var3 = 1_234_000

# 16进制,大小写都可以
hex_var1 = 0xDE
hex_var2 = 0xde

# 8进制
oct_var = 0o666
# 2进制
bin_var = 0b11010110

解析之后,会自动转换成10进制。

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

print("int_var1 = ", data["int_var1"])
print("int_var2 = ", data["int_var2"])
print("int_var3 = ", data["int_var3"])
print("hex_var1 = ", data["hex_var1"])
print("hex_var2 = ", data["hex_var2"])
print("oct_var = ", data["oct_var"])
print("bin_var = ", data["bin_var"])

# 运行结果
int_var1 =  99
int_var2 =  -17
int_var3 =  1234000
hex_var1 =  222
hex_var2 =  222
oct_var =  438
bin_var =  214

浮点型的各

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值