您可以通过将 dict 传递给 ConfigParser 初始化来获得默认值。
config = ConfigParser.ConfigParser({"test": "ok"})
但是这个默认值是实例范围的。第 1 部分的默认值如何与第 2 部分不同?
您可以通过将 dict 传递给 ConfigParser 初始化来获得默认值。
config = ConfigParser.ConfigParser({"test": "ok"})
但是这个默认值是实例范围的。第 1 部分的默认值如何与第 2 部分不同?
创建您自己的子类,并使用覆盖的吸气剂?像这样的东西?
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