[英]ConfigParser Get Key on given Value
使用ConfigParser,我可以轻松读取键的值,如下例所示:
#config.cfg
[NODE]
192.168.31.22 = node22
192.168.31.23 = node23
192.168.31.26 = node26
#PYTHON CODE
config = ConfigParser.RawConfigParser()
config.readfp(open("config.cfg"))
print config.get("NODE", "192.168.31.22")
>>>node22
有时,我需要根据给定的值读取“键”。 是否有任何内置函数根据给定的VALUE来获取KEY或任何替代方法?
print config.FUNCTIONXYZ("NODE", "node22")
>>>192.168.31.22
谢谢。
不,没有直接的方法。 在内部, ConfigParser
将配置文件读取到嵌套字典中,并且在每个部分中,键都映射到值,而不是相反。 坦白说,我不确定为什么要这么做,但是我怀疑这不是一个普遍的要求:)
但是,自己实现很容易:
# items in section 'NODE': key, value pairs
for key, value in config.items('NODE'):
if value == WHAT_I_NEED:
print key
如果需要在大型配置上进行许多此类查找,请考虑首先将items
放入字典中。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.