猿问

如何使用 python configparser 读取缩进部分

我尝试使用 python configparser 读取以下配置文件:


# test.conf

[section]

a = 0.3


        [subsection]

        b = 123

# main.py


import configparser

conf = configparser.ConfigParser()

conf.read("./test.conf")

a = conf['section']['a']

print(a)

输出:


0.3


[subsection]

b = 123

如果我删除缩进,则 a 被正确读取。


如何使用 python configparser 正确读取带有缩进的配置文件?


根据文档,它应该可以工作:

https ://docs.python.org/3.8/library/configparser.html#supported-ini-file-structure


我使用 python 3.7.6


翻过高山走不出你
浏览 170回答 2
2回答

慕斯王

在 python 错误跟踪器中提出错误后,我找到了一种阅读指定小节的方法。添加empty_lines_in_values=False到您的代码。错误跟踪器链接:https://bugs.python.org/issue41379import configparserconf = configparser.ConfigParser(empty_lines_in_values=False)conf.read("./test.conf")a = conf['section']['a']print(a)输出:hello

德玛西亚99

Configparser 只支持一个部分,没有子部分,如果你想你可以使用配置对象,http://www.voidspace.org.uk/python/configobj.html检查这里,这可能会帮助你python 3 make subsection for configparserpip install configobj并且您应该在 configobj 模块中像这样对 [[subsection]] 使用双方括号
随时随地看视频慕课网APP

相关分类

Python
我要回答