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 相关文章推荐
python3制作捧腹网段子页爬虫
Feb 12 Python
Python简单生成8位随机密码的方法
May 24 Python
python 拷贝特定后缀名文件,并保留原始目录结构的实例
Apr 27 Python
Python初学者需要注意的事项小结(python2与python3)
Sep 26 Python
python读取文件名并改名字的实例
Jan 07 Python
python实现将文件夹内的每张图片批量分割成多张
Jul 22 Python
pandas通过字典生成dataframe的方法步骤
Jul 23 Python
python获取引用对象的个数方式
Dec 20 Python
解决python 读取 log日志的编码问题
Dec 24 Python
pytorch 实现模型不同层设置不同的学习率方式
Jan 06 Python
python实现人机猜拳小游戏
Feb 03 Python
浅谈python3 构造函数和析构函数
Mar 12 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
手把手教你使用DedeCms V3的在线采集图文教程
2007/04/03 PHP
php使用sql数据库 获取字段问题介绍
2013/08/12 PHP
PHP连接SQLServer2005的方法
2015/01/27 PHP
PHP使用缓存即时输出内容(output buffering)的方法
2015/08/03 PHP
jquery 日期分离成年月日的代码
2010/05/14 Javascript
javascript 保存文件到本地实现方法
2012/11/29 Javascript
jquery数组之存放checkbox全选值示例代码
2013/12/20 Javascript
IE6 hack for js 集锦
2014/09/23 Javascript
javascript实现base64 md5 sha1 密码加密
2015/09/09 Javascript
谈谈encodeURI和encodeURIComponent以及escape的区别与应用
2015/11/24 Javascript
js简单判断移动端系统的方法
2016/02/25 Javascript
JavaScript中setter和getter方法介绍
2016/07/11 Javascript
Node.js+jade抓取博客所有文章生成静态html文件的实例
2017/09/19 Javascript
vue router学习之动态路由和嵌套路由详解
2017/09/21 Javascript
Vue使用vue-area-linkage实现地址三级联动效果的示例
2018/06/27 Javascript
react-router 路由切换动画的实现示例
2018/12/03 Javascript
微信小程序基于高德地图查找位置并显示文字
2019/10/30 Javascript
Node.js API详解之 module模块用法实例分析
2020/05/13 Javascript
JavaScript设计模式---单例模式详解【四种基本形式】
2020/05/16 Javascript
微信小程序之滑动页面隐藏和显示组件功能的实现代码
2020/06/19 Javascript
JavaScript 防抖和节流遇见的奇怪问题及解决
2020/11/20 Javascript
Python Deque 模块使用详解
2014/07/04 Python
pygame加载中文名mp3文件出现error
2017/03/31 Python
Python解决pip install时出现的Could not fetch URL问题
2019/08/01 Python
什么是python类属性
2020/06/10 Python
美国领先的低折扣旅行网站:Hotwire
2019/01/19 全球购物
Hush Puppies澳大利亚官网:舒适的男女休闲和正装鞋
2019/08/24 全球购物
回馈慈善的设计师太阳镜:DIFF eyewear
2019/10/17 全球购物
面试求职的个人自我评价
2013/11/16 职场文书
升职自荐信
2013/11/28 职场文书
优秀德育工作者事迹材料
2014/05/07 职场文书
党员对十八届四中全会的期盼思想汇报范文
2014/10/17 职场文书
大学生个人简历自荐信
2015/03/06 职场文书
Python还能这么玩之只用30行代码从excel提取个人值班表
2021/06/05 Python
python中的装饰器该如何使用
2021/06/18 Python
简单聊聊TypeScript只读修饰符
2022/04/06 Javascript