跳转到主要内容

极其简单的配置文件ini解析

项目描述

iniconfig:配置文件ini的简单解析

iniconfig是一个小型且简单的INI文件解析模块,具有独特的一组功能

  • 保持节和条目顺序

  • 支持多行值,包括或不包括行延续

  • 支持“#”注释

  • 带有正确行号的错误

  • 没有自动替换等花哨的功能

  • 如果两个节具有相同的名称,iniconfig将引发错误。

如果您遇到问题或有功能请求,请向以下地址报告

https://github.com/RonnyPfannschmidt/iniconfig/issues

基本示例

如果您有一个这样的ini文件

# content of example.ini
[section1] # comment
name1=value1  # comment
name1b=value1,value2  # comment

[section2]
name2=
    line1
    line2

然后您可以这样做

>>> import iniconfig
>>> ini = iniconfig.IniConfig("example.ini")
>>> ini['section1']['name1'] # raises KeyError if not exists
'value1'
>>> ini.get('section1', 'name1b', [], lambda x: x.split(","))
['value1', 'value2']
>>> ini.get('section1', 'notexist', [], lambda x: x.split(","))
[]
>>> [x.name for x in list(ini)]
['section1', 'section2']
>>> list(list(ini)[0].items())
[('name1', 'value1'), ('name1b', 'value1,value2')]
>>> 'section1' in ini
True
>>> 'inexistendsection' in ini
False