Python操作配置文件ini的三种方法讲解

 更新时间:2019年02月22日 15:15:57   作者:energysober  
今天小编就为大家分享一篇关于Python操作配置文件ini的三种方法讲解,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看吧

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的collections模块真的很好用

    Python的collections模块真的很好用

    collections是实现了特定目标的容器,以提供Python标准内建容器 dict , list , set , 和 tuple 的替代选择,本文详细总结collections的相关知识,感兴趣的朋友跟随看看吧
    2021-03-03
  • 深入讲解Python命令行解析模块argparse

    深入讲解Python命令行解析模块argparse

    Python 提供了一个解析命令行参数的标准库 argparse,可以让我们轻松编写用户友好的命令行接口,接下来我们就来详细介绍一下argparse 的使用方法吧
    2023-06-06
  • 菜鸟使用python实现正则检测密码合法性

    菜鸟使用python实现正则检测密码合法性

    本文给大家分享了2则使用Python实现正则表达式检测密码合法性的代码,由于是新手,所以方法比较笨,不过还是分享给小伙伴,希望对大家能够有所帮助。
    2016-01-01
  • python 制作简单的音乐播放器

    python 制作简单的音乐播放器

    这篇文章主要介绍了python 制作简单的音乐播放器,帮助大家更好的理解和学习python,感兴趣的朋友可以了解下
    2020-11-11
  • 安装pycurl报错Could not run curl-config: 'curl-config'

    安装pycurl报错Could not run curl-config: &ap

    这篇文章主要为大家介绍了安装pycurl报错Could not run curl-config: 'curl-config'解决方法,有需要的朋友可以借鉴参考下,希望能够有所帮助,祝大家多多进步,早日升职加薪
    2023-12-12
  • Python文件操作和异常处理的方法和技巧

    Python文件操作和异常处理的方法和技巧

    本文介绍了Python文件操作和异常处理的方法和技巧,包括读写文本文件、读写二进制文件、文件指针、异常类型和处理、try-except语句、异常处理程序等内容,帮助读者更好地掌握Python在文件操作和异常处理方面的应用
    2023-05-05
  • python BeautifulSoup库的常用操作

    python BeautifulSoup库的常用操作

    Beautiful Soup 是一个可以从HTML或XML文件中提取数据的Python库,它能够通过你喜欢的转换器实现惯用的文档导航,查询,修改文档的方式,本文就来给大家简单介绍一下BeautifulSoup库的常用操作,需要的朋友可以参考下
    2023-08-08
  • 给numpy.array增加维度的超简单方法

    给numpy.array增加维度的超简单方法

    这篇文章主要介绍了给numpy.array增加维度的超简单方法,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2021-06-06
  • 使用wxpython实现的一个简单图片浏览器实例

    使用wxpython实现的一个简单图片浏览器实例

    这篇文章主要介绍了使用wxpython实现的一个简单图片浏览器实例,根据自己的特殊需求而写,需要的朋友可以参考下
    2014-07-07
  • 解决pycharm中opencv-python导入cv2后无法自动补全的问题(不用作任何文件上的修改)

    解决pycharm中opencv-python导入cv2后无法自动补全的问题(不用作任何文件上的修改)

    这篇文章主要介绍了解决pycharm中opencv-python导入cv2后无法自动补全的问题(不用作任何文件上的修改),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-03-03

最新评论