我正在使用SafeConfigParser
,我的配置文件包含一个[DEFAULT]
部分,我使用下面的代码来提取该部分。在
parser = SafeConfigParser(allow_no_value=True)
parser.optionxform = str # makes names case sensitive
defaultAttributesDic = parser.defaults()
然而,我的DEFAULT
部分包括内插值,例如:
但问题是defaults()
返回实际的原始值(而不是插值)。
为什么?什么时候有用?我不明白这个决定背后的原因?在
我用parser.items(section)
来阅读其他部分,效果很好。返回的值是插值的。我应该跳过defaults
而改用items("DEFAULT")
?请给我解释一下?在
defaults()是继承自RawConfigParser的方法,该方法不支持插值。在
我认为您应该保留}等方法中。在
[DEFAULT]
部分,以便为其他部分提供默认值,而不是试图将其作为一个“正常”部分。[DEFAULT]
部分有特殊的含义,甚至不包括在sections()
或{如果需要一个“default”部分,只需将其命名为
DEFAULT
以外的名称。在相关问题 更多 >
编程相关推荐