首页 > Python教程 > Python应用 > Python操作配置文件ini的三种方法分享

Python操作配置文件ini的三种方法分享

时间:2019-10-20    作者:energysober   来源:互联网

python 操作配置文件ini的三种方法

方法一:crudini 命令

说明

crudini命令是Linux下的一个操作配置文件的命令工具

用法

crudini --set [--existing] config_file section [param] [value] # 修改配置文件内容
crudini --get [--format=sh|ini] config_file [section] [param] # 获取配置文件内容
crudini --del [--existing] config_file section [param]     # 删除配置文件内容
crudini --merge [--existing] config_file [section]       # 合并

举例

添加

 crudini --set test.ini test_section test_param test_value

更新

 crudini --set [--existing] test.ini test_section test_param test_value

删除

删除param:

 crudini --del test.ini test_section test_param

删除section:

 crudini --del test.ini test_section

获取

 crudini --del test.ini test_section test_param

如果该标量不在某一个section里面,则section用一个空字符表示:

 crudini --del test.ini '' test_param

合并

将another.ini配置文件合并到test.ini中:

 crudini --merge test.ini < another.ini

方法二 :ConfigParser模块

说明

ConfigParser 模块为常用的操作ini文件的模块,但是存在一些缺陷,无法识别section的大小写,无法读取文件注释,这样修带有注释的配置文件时就会存在问题。

用法示例

示例文件test.ini

[test_section]
test_param = test_value

读取

import ConfigParser
config = ConfigParser.ConfigParser()
config.readfp(open('test.ini'))
test_value = config.get("test_section","test_param")

写入

添加section

import ConfigParser
config = ConfigParser.ConfigParser()
# set a value of parameters
config.add_section("test_section2")
config.set("test_section2", "test_param2", "test_value2")
config.set("test_section3", "test_param3", "test_value3")
# write to file
config.write(open('test.ini', "w"))

修改

import ConfigParser
config = ConfigParser.ConfigParser()
config.read('1.ini')
config.set("test_section", "test_param3", "test_value3")
config.write(open('test.ini', "r+")) 

方法三:configobj模块

说明

正常的读配置文件的方法是给ConfigObj一个文件名,然后通过字典来访问成员,子段来获取value值,不会存在注释无法读取的缺陷

用法示例

示例文件test.ini

[test_section]
test_param = test_value

读取

from configobj import ConfigObj 
config = ConfigObj("test.ini",encoding='UTF8') 
# 读配置文件 
print config['test_section'] 
print config['test_section']['test_param '] 

修改

from configobj import ConfigObj 
config = ConfigObj("test.ini",encoding='UTF8') 
config['test_section']['test_param '] = "test_value2" 
# 写入
config.write() 

添加section

from configobj import ConfigObj 
config = ConfigObj("test.ini",encoding='UTF8') 
config['test_section2'] = {} 
config['test_section2']['test_param'] = "test_value" 
# 写入
config.write() 

删除

from configobj import ConfigObj 
config = ConfigObj("test.ini",encoding='UTF8') 
del config['test_section2']['test_param'] 
config.write() 

总结

以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对的支持。如果你想了解更多相关内容请查看下面相关链接

相关推荐
幸运大转盘游戏规则直营网
python开发:矢量数据转栅格数据代码分享
python开发:多进程间通信代码实现例子
Python开发:在django中实现支付宝支付的代码分享
分享:Django Admin中增加导出CSV功能过程详解
Python教程:面向对象之Web静态服务器
python开发:配置文件写入过程的代码解析

精彩推荐

热门教程

网站地图 至尊彩票纸直营网 九合至尊彩票直营网 万家彩票网可靠吗直营网
宝马线上娱乐平台 澳门美高梅登入 亚洲太阳城申博 138申博988太阳城娱乐
满堂彩广西快3 立式博彩机 彩票网址注册登入 太阳城在哪里开户?
众彩开户直营网 幸运之门彩票网推荐直营网 万家彩票开户直营网 67彩备用直营网
彩票专业彩吧助手直营网 万家彩票直营网 幸运之门彩票网推荐直营网 67彩平台直营网
33TGP.COM 817psb.com 99sbsun.com 183sj.com XSB318.COM
132sun.com 8JQS.COM 883XTD.COM 1115119.COM 118XTD.COM
333BBIN.COM 989sj.com 55sbib.com 587PT.COM 8YKS.COM
1112934.COM S618B.COM 888sbmsc.com 588TGP.COM 272SUN.COM