Python:configparser会记住以前文件中的值

时间:2013-11-21 16:12:11

标签: python configparser

我正在编写一个脚本,该脚本扫描不同目录中的一系列配置文件,以确保它们具有特定值:在这种情况下,它们必须具有MySection部分,该部分必须具有该选项Opt1,不能等于0.如果它通过了所有这些测试,则文件正常。

我遇到的问题是,ConfigParser似乎“记住”它扫描的所有文件,因此如果它扫描的第一个文件包含Opt1,则每个连续文件将为{{1}测试为正即使连续文件完全空白也是如此。我猜ConfigParser有某种缓存需要在读取每个文件之前清除吗?非常感谢任何帮助。

以下是代码:

Opt1

1 个答案:

答案 0 :(得分:2)

代码多次重用相同的ConfigParser对象(parser)。它确实记住了配置。

每次阅读新文件时都创建ConfigParser对象。

def repair(file,fsplit):
    parser = configparser.ConfigParser()
    parser.optionxform = str
    with open(file) as f:
        parser.read_file(f)
    ...