Python标准库之ConfigParser模块

配置文件的格式

a) 配置文件中包含一个或多个 section, 每个 section 有自己的 option;

b) section 用 [sect_name] 表示,每个option是一个键值对,使用分隔符 = 或 : 隔开;

c) 在 option 分隔符两端的空格会被忽略掉

d) 配置文件使用 # 或 ; 注释

注意事项 

配置参数读出来都是字符串类型, 参数运算时注意类型转换(可用eval()函数转换),另外,对于字符型参数不需要加""

ConfigParser的一些问题:

  1. 不能区分大小写。
  2. 重新写入的配置文件不能保留原有配置文件的注释。
  3. 重新写入的配置文件不能保持原有的顺序。
  4. 不支持嵌套。
  5. 不支持格式校验

一个简单的配置文件样例 test.conf

# database
[db]
host = 192.168.6.1
port = 3306
user = root
pass = root

# ssh
[ssh]
host = 192.168.1.106
user = huey
pass = huey

插值 Interpolation

SafeConfigParser 提供了插值的特性来结合数据。
url.conf

复制代码
[DEFAULT]
url = %(protocol)s://%(server)s:%(port)s/

[http]
protocol = http
server = localhost
port = 8080

[ftp]
url = %(protocol)s://%(server)s/
protocol = ftp
server = 192.168.1.106

代码示例:
import ConfigParser

cp = ConfigParser.SafeConfigParser()
cp.read('url.conf')

print cp.get('http', 'url') # http://localhost:8080/
print cp.get('ftp', 'url') # ftp://192.168.1.106/

 

 

 

 
posted @   pandaly  阅读(445)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
· 基于Microsoft.Extensions.AI核心库实现RAG应用
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
阅读排行:
· 震惊!C++程序真的从main开始吗?99%的程序员都答错了
· winform 绘制太阳,地球,月球 运作规律
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示