您可以通过将dict传递给ConfigParser初始化来获得默认值。
config = ConfigParser.ConfigParser({"test": "ok"})
但是这个默认值是实例范围的。你怎么能从Section1到第2节有不同的默认值?
答案 0 :(得分:3)
使用重写的getter创建自己的子类?像这样的东西?
class MyConfigParser(ConfigParser):
my_defaults = {
'Section 1': 'spam',
'Section 2': 'eggs',
}
def get(self, section, key):
try:
return ConfigParser.get(self, section, key)
except ConfigParser.NoSectionError:
if section in self.my_defaults:
self.add_section(section)
self.set(section, key, self.my_defaults[section])
return self.my_defaults[section]
else:
raise
except ConfigParser.NoOptionError:
if section in self.my_defaults:
self.set(section, key, self.my_defaults[section])
return self.my_defaults[section]
else:
raise