Python配置文件处理的方法教程

yipeiwu_com6年前Python基础

前言

在平时的工程中,我们在构建工程时,常常需要用到配置文件,用来配置项目的一些信息,比如数据库,请求网址,文件夹,线程、进程数等信息,这样就可以方便我们通过修改配置文件中的参数来很好地完成整个项目的功能修改或开发。配置文件一般区别于Python代码,会单独存放在一个文件夹中,方便管理,常见的配置文件格式有.conf, .ini, .yaml等。

本文使用Python中的configparser模块来处理conf、ini配置文件。

首先需要安装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]是select,类似于HTML中的select(下拉菜单),下面的几行为option,规定了数据库的连接信息,包括host、port、user、password以及database。

接着是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设计】的支持。

相关文章

python实现ID3决策树算法

决策树之ID3算法及其Python实现,具体内容如下 主要内容 决策树背景知识 决策树一般构建过程 ID3算法分裂属性的选择 ID3算法流程及其优缺点分析 ID3算法Python代码...

人脸识别经典算法一 特征脸方法(Eigenface)

人脸识别经典算法一 特征脸方法(Eigenface)

这篇文章是撸主要介绍人脸识别经典方法的第一篇,后续会有其他方法更新。特征脸方法基本是将人脸识别推向真正可用的第一种方法,了解一下还是很有必要的。特征脸用到的理论基础PCA在另一篇博客里:...

在Python中利用pickle保存变量的实例

在Python中利用pickle保存变量的实例

在工作中出于某些原因,我们可能需要将变量保存下来,这样下次就可以直接去赋值而不用重新执行某些重复耗时的操作了,这里我们用到了Python的pickle包来做变量的存储和变量加载,大家注意...

python操作ie登陆土豆网的方法

本文实例讲述了python操作ie登陆土豆网的方法。分享给大家供大家参考。具体如下: 这里利用ie操作登陆土豆网,很简单,仅做一下记录,以备后用。 # -*- coding: utf...

Python urlopen()函数 示例分享

好了,废话少说,我们先看看几个示例吧 一、打开一个网页获取所有的内容 复制代码 代码如下:from urllib import urlopendoc = urlopen("http://...