Python中使用configparser模块读写配置文件指南

顾星河
顾星河
发布时间:2026-10-12| 5人浏览过
原创

本文详解Python 3环境中configparser模块的完整用法。通过实例演示如何创建配置文件、添加参数段落与键值对,以及安全读取指定配置项并完成类型转换,帮助开发者快速掌握基于INI格式的基础文件读写操作与常见注意事项。

准备条件与环境说明

ConfigParser是Python内置的标准库模块(Python 3中已统一小写为configparser),专门用于处理类Windows .ini格式的配置文件。无需额外安装,直接使用标准导入即可。本节将演示如何写入配置数据到磁盘文件,以及如何读取并解析这些已保存的配置项。

第1步:使用RawConfigParser编写配置文件

在需要持久化存储简单配置时,可使用RawConfigParser或默认ConfigParser实例。此步骤旨在建立配置结构并生成本地配置文件。

# 导入标准库模块
import configparser
import time

# 初始化解析器实例
config = configparser.RawConfigParser()

# 构建任务字典数据
task = {
    "id": 1,
    "package": "exe",
    "timeout": 150,
    "dst_filename": "1.exe",
    "custom": ""
}

# 添加配置段落(Section)
config.add_section("analysis")

# 向该段落中添加键值对(Options)
config.set("analysis", "id", str(task["id"]))
config.set("analysis", "target", task["dst_filename"])
config.set("analysis", "package", task["package"])
config.set("analysis", "timeout", str(task["timeout"]))
config.set("analysis", "started", time.asctime())

# 将配置内容写入目标文件
with open("analy.conf", "w") as fp:
    config.write(fp)

执行上述代码后,将在当前工作目录生成analy.conf文件,其内部数据结构如下所示:

[analysis]
started = Tue Apr 10 15:40:51 2012
package = exe
id = 1
timeout = 150
target = 1.exe

第2步:读取并解析已有配置文件

当应用启动或需要获取外部设定参数时,需加载已保存的配置文件。此步骤演示如何检查特定选项是否存在,并按需求获取字符串或整型数值。

import configparser

# 实例化解析器并加载文件
config = configparser.ConfigParser()
config.read("analy.conf")

# 校验指定段落与选项是否存在
if config.has_option("analysis", "timeout"):
    print(config.get("analysis", "timeout"))

# 打印所有存在的段落名称
print(config.sections())

# 读取字符串类型配置
print(config.get("analysis", "package"))

# 读取并自动转换为整型配置
print(config.getint("analysis", "id"))

运行读取逻辑后的终端输出结果为:

150
['analysis']
exe
1

完成判断与维护建议

若脚本执行无报错且磁盘生成了符合预期的配置文件,同时读取环节能准确返回对应的段落列表与转换后的变量值,即表示配置读写流程已成功打通。需要注意的是,ConfigParser默认会将所有未加引号的键名转为小写以保持一致性。若需保留原始大小写区分,建议在实例化时传入optionxform=str参数。此外,对于生产环境的关键配置,写入前建议做好原有文件的备份以防误覆盖。

以上就是Python使用configparser模块读写配置文件的详细内容,更多关于Python配置管理的资料请关注本站其它相关文章!

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。