Python操作配置文件ini的三种方法讲解
python操作配置文件ini的三种方法
方法一:crudini命令
说明
crudini命令是Linux下的一个操作配置文件的命令工具
用法
crudini--set[--existing]config_filesection[param][value]#修改配置文件内容 crudini--get[--format=sh|ini]config_file[section][param]#获取配置文件内容 crudini--del[--existing]config_filesection[param]#删除配置文件内容 crudini--merge[--existing]config_file[section]#合并
举例
添加
crudini--settest.initest_sectiontest_paramtest_value
更新
crudini--set[--existing]test.initest_sectiontest_paramtest_value
删除
删除param:
crudini--deltest.initest_sectiontest_param
删除section:
crudini--deltest.initest_section
获取
crudini--deltest.initest_sectiontest_param
如果该标量不在某一个section里面,则section用一个空字符表示:
crudini--deltest.ini''test_param
合并
将another.ini配置文件合并到test.ini中:
crudini--mergetest.ini方法二:ConfigParser模块
说明
ConfigParser模块为常用的操作ini文件的模块,但是存在一些缺陷,无法识别section的大小写,无法读取文件注释,这样修带有注释的配置文件时就会存在问题。
用法示例
示例文件test.ini
[test_section] test_param=test_value读取
importConfigParser config=ConfigParser.ConfigParser() config.readfp(open('test.ini')) test_value=config.get("test_section","test_param")写入
添加section
importConfigParser config=ConfigParser.ConfigParser() #setavalueofparameters config.add_section("test_section2") config.set("test_section2","test_param2","test_value2") config.set("test_section3","test_param3","test_value3") #writetofile config.write(open('test.ini',"w"))修改
importConfigParser 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读取
fromconfigobjimportConfigObj config=ConfigObj("test.ini",encoding='UTF8') #读配置文件 printconfig['test_section'] printconfig['test_section']['test_param']修改
fromconfigobjimportConfigObj config=ConfigObj("test.ini",encoding='UTF8') config['test_section']['test_param']="test_value2" #写入 config.write()添加section
fromconfigobjimportConfigObj config=ConfigObj("test.ini",encoding='UTF8') config['test_section2']={} config['test_section2']['test_param']="test_value" #写入 config.write()删除
fromconfigobjimportConfigObj config=ConfigObj("test.ini",encoding='UTF8') delconfig['test_section2']['test_param'] config.write()总结
以上就是这篇文章的全部内容了,希望本文的内容对大家的学习或者工作具有一定的参考学习价值,谢谢大家对毛票票的支持。如果你想了解更多相关内容请查看下面相关链接