我刚开始使用ConfigParser,它看起来很有趣,但是我得到了一个我有一个想法。我试着比较我的配置文件.ini第一部分。在
演示示例配置文件.ini公司名称:
[DefaultSection]
key1 : value1
key2 : value2
key3 : value3
.
.
.
keyn : valuen
[Section2]
key1 : value5
key2 : value6
key3 : value7
.
.
.
keyn : valuen
[Section3]
key1 : value8
key2 : value9
key3 : value10
.
.
.
keyn : valuen
我要做的是将每个部分与默认部分进行比较,看看各小节之间是否存在任何差异。我想看看其余部分的键是否与我不关心的默认键匹配。如果密钥不匹配,则应打印丢失的密钥:
例如:section(n) is missing key(5)
我正在使用双字典,我认为这是找到差异的最合适的方法,但我的技能有限,我无法找到解决办法。在
加载和解析数据的代码示例:
^{pr2}$我想将字典1的所有键与配置文件.ini. 当然,这个脚本应该是通用的,能够处理n个字典和n个键。在
谢谢你们所有的时间和努力来帮助我。在
如果您使用特殊的
DEFAULT
部分,那么configparser将在一个节中为每个丢失的键提供一个在您读取文件时默认的键。这可能不是你想要的,但是如果你创建你的文件然后你就可以得到这样不同的钥匙了
^{pr2}$请注意,
Section2
的未定义的key3
采用默认值,因此不会报告为不同。但是key2
,它被显式地分配了一个不同的值will。在config.sections()
为您提供了每个部分,但除外,因此不必对默认键与它们本身进行比较。在相关问题 更多 >
编程相关推荐