前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >Python模块之: configobj

Python模块之: configobj

作者头像
py3study
发布2020-01-09 16:44:25
1.1K0
发布2020-01-09 16:44:25
举报
文章被收录于专栏:python3

原来也有写过一篇文章Python模块之: ConfigParser 用来解析INI文件,但是在使用过程中存在一些问题。比如: 1,不能区分大小写。 2,重新写入的ini文件不能保留原有INI文件的注释。 3,重新写入的ini文件不能保持原有的顺序。 4,不支持嵌套。 5,不支持格式校验。 我本来是想扩展ConfigParser来支持上面的一些缺点的,但是我觉得应该有人有类似的问题并应该有相关的模块满足 我上面的需求的,于是放G搜索之。得到一个Lib: configobj。下面我将举例说明其常用的几个方法: 项目地址:http://www.voidspace.org.uk/python/configobj.html 在介绍之前,还是先各处初始化的test.ini文件:

代码语言:javascript
复制
[server]
servername = 192.168.11.1
serverport = 8000
代码语言:javascript
复制
[client_srv]
# 这里是注释
server = localhost
port = 8000

A: 解析文件:

代码语言:javascript
复制
from configobj import ConfigObj
#
conf_ini = "./test.ini"
config = ConfigObj(conf_ini,encoding='UTF8')
#
# 读配置文件
#
print config['server']
print config['server']['servername']

B: 修改配置文件

代码语言:javascript
复制
from configobj import ConfigObj
#
conf_ini = "./test.ini"
config = ConfigObj(conf_ini,encoding='UTF8')
config['server']['servername'] = "127.0.0.1"
config.write()

C:添加新项:

代码语言:javascript
复制
from configobj import ConfigObj
#
conf_ini = "./test.ini"
config = ConfigObj(conf_ini,encoding='UTF8')
config['new_items'] = {}
config['new_items']['Items1'] = "test items"
config.write()

D: 删除项:

代码语言:javascript
复制
from configobj import ConfigObj
#
conf_ini = "./test.ini"
config = ConfigObj(conf_ini,encoding='UTF8')
del config['client_srv']['port']
config.write()

E: 将配置文件写入到不同的文件:

代码语言:javascript
复制
from configobj import ConfigObj
#
conf_ini = "./test.ini"
config = ConfigObj(conf_ini,encoding='UTF8')
del config['client_srv']['port']
config.filename = "./test1.ini"
config.write()
本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019/09/05 ,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档