python用Configobj模块读取配置文件


Posted in Python onSeptember 26, 2020

一、介绍

我们在项目的开发过程中应该会遇到这样的问题:我们的项目读取某个配置文件,然后才能按照配置的信息正常运行服务,当我们需要对修改服务的某些信息时,可以直接修改这个配置文件,重启服务即可,不用再去打开项目代码进行修改,这样方便了我们后期运维人员的工作。

读取配置文件信息,修改配置文件,我们可以使用Configobj和ConfigParser模块,个人推荐使用Configobj模块,因为Configobj相比于ConfigParser,优势在于Configobj模块的使用更加清晰简单(其实是我看到ConfigParser模块好像复杂一点,自己选了个简单点的模块而已,哈哈哈哈哈)。

pip install configobj

configobj的简单之处就在于,它是以字典的形式来读取/修改配置文件,就跟操作字典一样,很简单,下面看看例子就知道了。

二、configobj的使用

1、test.cfg配置文件

[server]
name = zbj
port = 9000
 
[home]
# 注释
area = huizhou

2、读取配置文件信息

from configobj import ConfigObj


# 实例化一个Configobj对象,给ConfigObj一个配置文件的路径,然后通过字典来访问成员,子段也是一个字典
cfg_path = "./test.cfg"
config = ConfigObj(cfg_path, encoding='UTF-8')

# 读配置文件
print(config['server']) # {'name': 'zbj', 'port': '9000'}
print(config['server']['name']) # zbj

3、修改配置文件

from configobj import ConfigObj


cfg_path = "./test.cfg"
config = ConfigObj(cfg_path, encoding='UTF-8')
config['server']['name'] = "clj"
# 修改完记得write写入配置文件
config.write()

python用Configobj模块读取配置文件

4、给配置文件添加新项

from configobj import ConfigObj


cfg_path = "./test.cfg"
config = ConfigObj(cfg_path, encoding='UTF-8')
config['school'] = {}
config['school']['class'] = "three"
# 只要进行了修改(包括新增删除等)的操作,记得write修改
config.write()

python用Configobj模块读取配置文件

5、删除配置文件中的某个项

from configobj import ConfigObj


cfg_path = "./test.cfg"
config = ConfigObj(cfg_path, encoding='UTF-8')
del config['school']
del config['server']['port']
config.write()

python用Configobj模块读取配置文件

6、将配置文件写入到不同的文件

from configobj import ConfigObj


cfg_path = "./test.cfg"
config = ConfigObj(cfg_path, encoding='UTF-8')
config.filename = "./test.ini"
config.write()
# 此时会新建一个test.ini文件,然后会将test.cfg的内容写入到test.ini文件

python用Configobj模块读取配置文件

7、创建新的配置文件

from configobj import ConfigObj


# 实例化一个ConfigObj对象
config = ConfigObj()
# filename指定新创建的文件路径和名称
config.filename = './my_cfg.ini'

# 写入配置信息
config['people'] = {}
config['people']['name'] = 'zzbj'
config['people']['age'] = '18'
config.write()

python用Configobj模块读取配置文件

以上就是python用Configobj模块读取配置文件的详细内容,更多关于python Configobj模块的资料请关注三水点靠木其它相关文章!

Python 相关文章推荐
python搭建简易服务器分析与实现
Dec 15 Python
TensorFlow深度学习之卷积神经网络CNN
Mar 09 Python
Python使用pymysql从MySQL数据库中读出数据的方法
Jul 25 Python
opencv之为图像添加边界的方法示例
Dec 26 Python
Python 实现递归法解决迷宫问题的示例代码
Jan 12 Python
python如何实现复制目录到指定目录
Feb 13 Python
python实现学生成绩测评系统
Jun 22 Python
Python连接mysql方法及常用参数
Sep 01 Python
Python通过fnmatch模块实现文件名匹配
Sep 30 Python
python request 模块详细介绍
Nov 10 Python
利用Python实现最小二乘法与梯度下降算法
Feb 21 Python
七个Python必备的GUI库
Apr 27 Python
Python内存泄漏和内存溢出的解决方案
Sep 26 #Python
python 两种方法修改文件的创建时间、修改时间、访问时间
Sep 26 #Python
如何使用Python调整图像大小
Sep 26 #Python
小白教你PyCharm从下载到安装再到科学使用PyCharm2020最新激活码
Sep 25 #Python
PyCharm2020最新激活码+激活码补丁(亲测最新版PyCharm2020.2激活成功)
Nov 25 #Python
详解Python中第三方库Faker
Sep 25 #Python
python对批量WAV音频进行等长分割的方法实现
Sep 25 #Python
You might like
PHP 数组教程 定义数组
2009/10/23 PHP
PHP程序开发范例学习之表单 获取文本框的值
2011/08/08 PHP
PHP序列号生成函数和字符串替换函数代码
2012/06/07 PHP
浅析Yii中使用RBAC的完全指南(用户角色权限控制)
2013/06/20 PHP
php生成图片验证码-附五种验证码
2015/08/19 PHP
PHPUnit测试私有属性和方法功能示例
2018/06/12 PHP
浅谈js中子页面父页面方法 变量相互调用
2016/08/04 Javascript
全面解析Bootstrap表单样式的使用
2016/09/09 Javascript
Bootstrap笔记—折叠实例代码
2017/03/13 Javascript
详解nodejs的express如何自动生成项目框架
2017/07/12 NodeJs
JS实现图片手风琴效果
2020/04/17 Javascript
Node.js中的不安全跳转如何防御详解
2018/10/21 Javascript
详解express使用vue-router的history踩坑
2019/06/05 Javascript
手把手15分钟搭一个企业级脚手架
2019/09/16 Javascript
layui禁用侧边导航栏点击事件的解决方法
2019/09/25 Javascript
Openlayers实现地图的基本操作
2020/09/28 Javascript
vue.js实现点击图标放大离开时缩小的代码
2021/01/27 Vue.js
wxPython 入门教程
2008/10/07 Python
Python判断字符串是否为字母或者数字(浮点数)的多种方法
2018/08/03 Python
使用python搭建服务器并实现Android端与之通信的方法
2019/06/28 Python
python利用re,bs4,requests模块获取股票数据
2019/07/29 Python
Pytorch 实现自定义参数层的例子
2019/08/17 Python
flask框架配置mysql数据库操作详解
2019/11/29 Python
tensorflow -gpu安装方法(不用自己装cuda,cdnn)
2020/01/20 Python
TensorFlow——Checkpoint为模型添加检查点的实例
2020/01/21 Python
python求numpy中array按列非零元素的平均值案例
2020/06/08 Python
一款纯css3实现的动画加载导航
2014/10/08 HTML / CSS
索引覆盖(Index Covering)查询含义
2012/02/18 面试题
《跟踪台风的卫星》教学反思
2014/04/10 职场文书
留守儿童工作方案
2014/06/02 职场文书
写得不错的求职信范文
2014/07/11 职场文书
课外活动实习计划
2015/01/19 职场文书
违纪学生保证书
2015/02/27 职场文书
2015学校年度工作总结
2015/05/11 职场文书
2016消防宣传标语口号
2015/12/26 职场文书
《海上日出》教学反思
2016/02/23 职场文书