我正在尝试使用ConfigParser
设置一些默认值。我知道如何设置这些默认值但是整数有问题。
这是我的代码:
import ConfigParser
defaults = {
"str1": "val1",
"str2": "val2",
"int1": 10,
"int2": 20
}
section = "some_section"
config = ConfigParser(defaults)
print config.get(section, "str1")
print config.get(section, "str1")
print config.getint(section, "int1")
print config.getint(section, "int2")
当未提供某些字符串值时,默认值可正常工作。
但是,当没有提供某些整数值并且需要使用默认值时,抛出TypeError: argument of type 'int' is not iterable
的例外
我没有找到任何整数示例作为默认值。有什么帮助吗?
答案 0 :(得分:2)
所以,在我的测试中,我发现了一些有趣的东西。 其中之一是整数和布尔值的默认值需要在默认字典中设置为字符串(None值除外):
defaults = {
"str1": "val1",
"str2": "val2",
"int1": "10",
"int2": "20",
"boolean1": "True",
"boolean2": "False",
"empty_var": None
}
注意:要使用ConfigParser.getboolean
现在可行;)