使用configobj逐个读取完整节

1 投票
1 回答
2997 浏览
提问于 2025-04-16 18:53

我正在使用configobj来读取一个配置文件,内容如下。

[default]
    PROP1 = "12345"
    PROP2 = "abcde"
[section1]
    PROP1 = "56789"
    PROP2 = ""
[section2]
    PROP1 = ""
    PROP2 = "" 

我的目标是先读取所有的部分,然后把每个部分放到一个字典里。如果某个部分没有值,我需要用默认值来替代。比如说,section2里的PROP1如果没有值,就会变成“12345”。我一直在研究configobj,想要直接把某个部分读取到字典对象里,但好像没有这样的功能或方法。有没有人能帮帮我?

谢谢

Umapathy

1 个回答

2

当你读取配置文件时,configobj会把它转换成一个字典给你。

>>> from configobj import ConfigObj

>>> config = ConfigObj('your_config_filename')

>>> config.keys()
<<< ['default', 'section1', 'section2']

>>> config['default']
<<< {'PROP1': '12345', 'PROP2': 'abcde'}

撰写回答