Python使用ConfigParser处理配置文件详解

江岸
江岸
发布时间:2026-10-13 | 3人浏览过
原创

本文详细介绍如何在Python工程中利用configparser模块处理.conf和.ini格式的配置文件。通过具体MySQL连接示例,演示如何安装模块、定义配置项、读取参数并连接数据库,帮助开发者实现项目配置的灵活管理与维护。

Python配置文件处理概述

前言

在常规软件开发中,构建项目时通常需要借助配置文件来存储关键信息,例如数据库连接地址、请求URL、目录路径以及线程或进程数量等。这种方式允许开发者通过调整配置文件中的参数,便捷地完成项目功能的修改或功能开发。为了便于统一管理,配置文件通常独立于Python代码存放于特定文件夹中,常见的格式包括.conf、.ini以及.yaml等。

本文将演示如何使用Python内置的configparser模块来解析.conf和.ini格式的配置文件。

安装ConfigParser模块

首先,需要确保环境中已安装configparser模块,安装命令如下:


pip3 install configparser

配置文件工程实例

接下来,我们将通过一个具体的工程实例,讲解如何在Python项目中应用配置文件。该项目的目录结构如下图所示:

该项目仅包含两个核心文件:一个是mysql.conf,用于存储MySQL数据库的连接配置;另一个是Python脚本,负责读取指定表格的具体数据。

配置文件结构解析

mysql.conf文件的具体内容如下:


[mysql]
db_host=localhost
db_port=3306
db_user=root
db_password=
db_database=school

文件中的[mysql]部分相当于一个节(section),类似于HTML中的select下拉菜单组件;其下方的各行则是选项(option),分别定义了数据库的主机地址(host)、端口(port)、用户名(user)、密码(password)以及数据库名称(database)。

Python代码实现与数据读取

随后是mysql_test.py脚本,其完整代码内容如下:


# -*- coding:utf-8 -*-
# time: 2019-08-28
# place: Daxing Beijing

from configparser import ConfigParser
import pymysql

cp = ConfigParser()
cp.read('mysql.conf')

host = cp.get("mysql", "db_host")
port = cp.getint("mysql", "db_port")
user = cp.get("mysql", "db_user")
password = cp.get("mysql", "db_password")
database = cp.get("mysql", "db_database")

# 打开数据库连接
db = pymysql.connect(host=host,
           port=port,
           user=user,
           password=password,
           db=database
           )

# 使用cursor()方法创建一个游标对象: cursor
cursor = db.cursor()

# 使用execute()方法执行SQL语句并输出结果
cursor.execute("select * from employee")

for row in cursor.fetchall():
  print(row)

# 关闭游标对象
cursor.close()

# 关闭数据库连接
db.close()

在该脚本中,我们利用configparser模块解析mysql.conf文件以获取MySQL数据库的连接参数,并借助pymysql模块查询school数据库中employee表的全部数据。程序运行后的输出结果如下:

('mac', 'mohan', 20, 'm', 2000.0, datetime.date(2019, 9, 1)) ('alex', 'ben', 24, 'f', 2500.0, datetime.date(2012, 8, 9))

为了验证数据准确性,我们可以查看MySQL数据库中该表的实际内容,如下图所示:

以上即为示例项目的完整演示过程。

在工程构建过程中,使用配置文件无疑是一种重要且便捷的做法。因此,在实际的工程实践中,建议广泛采用配置文件来管理项目参数,希望本文的内容能对各位的工作有所帮助。

总结

以上就是本文的全部内容,希望这些内容能为大家的学习或工作提供一定的参考价值。感谢大家对本站的支持。

相关标签:

本站声明

本文内容仅供参考,不代表本站观点。转载或引用请注明出处。如发现内容问题,请通过联系我们页面反馈。

Python 相关产品和应用

全部下载

专题列表