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


Posted in Python onAugust 29, 2019

前言

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

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

首先需要安装configparser模块,命令如下:

pip3 install configparser

我们以下面的具体工程为例,来讲述如何使用Python如何工程中的配置文件,项目结构如下图:

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 相关文章推荐
用Python代码来解图片迷宫的方法整理
Apr 02 Python
python实现微信跳一跳辅助工具步骤详解
Jan 04 Python
python在html中插入简单的代码并加上时间戳的方法
Oct 16 Python
Python正则表达式和元字符详解
Nov 29 Python
如何将PySpark导入Python的放实现(2种)
Apr 26 Python
简单了解如何封装自己的Python包
Jul 08 Python
Python实现文件压缩和解压的示例代码
Aug 12 Python
Python使用socket模块实现简单tcp通信
Aug 18 Python
pycharm2020.1.2永久破解激活教程,实测有效
Oct 29 Python
Django正则URL匹配实现流程解析
Nov 13 Python
Python 实现一个简单的web服务器
Jan 03 Python
python 获取谷歌浏览器保存的密码
Jan 06 Python
浅谈django url请求与数据库连接池的共享问题
Aug 29 #Python
python 进程的几种创建方式详解
Aug 29 #Python
python 列表推导式使用详解
Aug 29 #Python
django 数据库连接模块解析及简单长连接改造方法
Aug 29 #Python
解决Django连接db遇到的问题
Aug 29 #Python
Python pandas实现excel工作表合并功能详解
Aug 29 #Python
python openCV获取人脸部分并存储功能
Aug 28 #Python
You might like
用PHP连接Oracle数据库
2006/10/09 PHP
php调用方法mssql_fetch_row、mssql_fetch_array、mssql_fetch_assoc和mssql_fetch_objcect读取数据的区别
2012/08/08 PHP
PHP对象相互引用的内存溢出实例分析
2014/08/28 PHP
PHP框架Laravel学习心得体会
2015/10/28 PHP
常用PHP数组排序函数归纳
2016/08/08 PHP
JS 图片缩放效果代码
2010/06/09 Javascript
利用jQuery插件扩展识别浏览器内核与外壳的类型和版本的实现代码
2011/10/22 Javascript
javascript函数特点实例分析
2015/05/14 Javascript
jQuery Html控件基本操作(日常收集整理)
2016/03/11 Javascript
jQuery on()方法绑定动态元素的点击事件实例代码浅析
2016/06/16 Javascript
vue.js系列中的vue-fontawesome使用
2018/02/10 Javascript
微信小程序中使用ECharts 异步加载数据的方法
2018/06/27 Javascript
npm的lock机制解析
2019/06/20 Javascript
中级前端工程师必须要掌握的27个JavaScript 技巧(干货总结)
2019/09/23 Javascript
如何使用JS console.log()技巧提高工作效率
2020/10/14 Javascript
vue-video-player视频播放器使用配置详解
2020/10/23 Javascript
[54:25]Ti4 循环赛第三日LGD vs MOUZ
2014/07/12 DOTA
[01:38]DOTA2辉夜杯 欢乐的观众现场采访
2015/12/26 DOTA
Python中urllib2模块的8个使用细节分享
2015/01/01 Python
python 获取utc时间转化为本地时间的方法
2018/12/31 Python
python3使用matplotlib绘制散点图
2019/03/19 Python
详解centos7+django+python3+mysql+阿里云部署项目全流程
2019/11/15 Python
python如何获取apk的packagename和activity
2020/01/10 Python
Python restful框架接口开发实现
2020/04/13 Python
pandas使用函数批量处理数据(map、apply、applymap)
2020/11/27 Python
CSS3 transition 实现通知消息轮播条
2020/10/14 HTML / CSS
Etam俄罗斯:法国女士内衣和家居服网上商店
2019/10/30 全球购物
上海雨人软件技术开发有限公司测试题
2015/07/14 面试题
农民致富事迹材料
2014/01/23 职场文书
个人创业事迹材料
2014/12/30 职场文书
初中信息技术教学计划
2015/01/22 职场文书
检察院起诉书
2015/05/20 职场文书
强烈推荐:小学生:暑假作息时间表(值得收藏)
2019/07/09 职场文书
MySQL 视图(View)原理解析
2021/05/19 MySQL
redis实现排行榜功能
2021/05/24 Redis
python常见的占位符总结及用法
2021/07/02 Python