Python configparser模块配置文件过程解析

季宁
季宁
发布时间:2026-10-12| 1人浏览过
原创

本文详细解析Python中configparser模块的使用过程。通过定义ConfigParser类,实现类似Windows ini文件的配置文件读写。文章涵盖配置文件的创建、读取、分组查看、键值对获取以及增删改操作,并提供完整的代码示例,帮助开发者高效管理Python项目的配置信息。

Python configparser模块配置文件过程解析

在Python 3中,用于处理配置文件的模块名为 configparser(Python 2中为ConfigParser)。该模块定义了一个核心类 ConfigParser,专门用于使配置文件生效。其配置文件格式与Windows的ini文件相同,通常使用 .ini 作为扩展名。

创建配置文件

首先,我们需要创建一个配置文件。通过实例化 ConfigParser 类,可以定义默认配置和特定分组的配置。以下代码演示了如何创建一个包含默认配置、特定主机配置以及路径配置的 example.ini 文件:

import configparser

config = configparser.ConfigParser()
config['DEFAULT'] = {
  'ServerAliveInterval':'45',
  'Compression':'yes',
  'CompressionLevel':'9',
  'ForwardX11':'yes'
}
config['bitbucker.org'] = {
  'Host Port':'50022',
  'ForwardX11':'no'
}
config['path'] = {
  'Base_Path':'D:\python\pychrom\路飞学城\day8',
  'student_path':'D:\python\pychrom\路飞学城\day8\configparser模块.py'
}

with open('example.ini','w',encoding='utf-8') as configfile:
  config.write(configfile)

读取与解析配置文件

创建好配置文件后,可以使用 read 方法读取文件内容。读取时指定编码格式(如 utf-8)可以确保中文字符正确处理。读取后,可以通过多种方法查看和提取配置信息:

import configparser

config = configparser.ConfigParser()
config.read('example.ini',encoding='utf-8')

print(config.sections())      # 查看分组情况,默认default是不显示的
print('bitbucker.org' in config)   # Flase 判断一个组在不在这个文件当中
print('bitbucker.com' in config)   # True

print(config['bitbucker.org']['host_port']) # 查钊这个文件中这个分组下面有没有这个配置
print(config['bitbucker.org']['user'])    # 没有就报错

for key in config['bitbucker.org']:      # 取默认分组和这个组的下面所有配置
  print(key)                # 只能取到 key

print(config.options('bitbucker.org'))     # 取分组下面的配置,包括默认分组 只能取到值
print(config.items('bitbucker.org'))       # 取到分组下面的键值对,包括默认分组

print(config.get('path','base_path'))       # 获取某个分组下面的键来获取值

在上述代码中,sections() 方法返回所有分组的列表(默认分组不显示)。通过 in 关键字可以判断某个分组是否存在。直接通过 config['group']['key'] 可以获取特定键的值,如果键不存在则会报错。此外,options() 和 items() 方法分别用于获取分组下的所有键和键值对,包括默认分组的配置。

修改配置文件

除了读取,configparser 模块还支持对配置文件进行修改。修改操作包括添加分组、删除分组、删除选项以及修改选项值。需要注意的是,修改后必须调用 write 方法将更改写入文件,否则修改不会生效:

import configparser
config = configparser.ConfigParser()
config.read('example.ini',encoding='utf-8')
config.add_section('zuming')    # 添加组
config.remove_section('zuming')   # 删除一个组
config.remove_option('bitbucker.org','host_port')  # 删除某个组中的某一项
config.set('bitbucker.org','host_port','22')  # 修改某个组下面的值
config.write(open('example.ini','w',encoding='utf-8'))  # 必须添加这句话才能生效

通过 add_section 可以添加新的分组,remove_section 可以删除整个分组,remove_option 可以删除特定分组下的某个选项,set 方法用于修改特定分组下的选项值。最后,通过 write 方法将修改后的配置写回文件。

以上就是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 算法库。