ConfigParser初期化にdictを渡すことにより、デフォルト値を設定できます。
config = ConfigParser.ConfigParser({"test": "ok"})
ただし、このデフォルトはインスタンス全体です。セクション1とセクション2のデフォルトをどのように変えることができますか?
ConfigParser初期化にdictを渡すことにより、デフォルト値を設定できます。
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