所以我想首先说我一直在寻找答案,并没有找到有用的东西。我也浏览了Python的文档,但没有找到有用的东西。我的最后一个问题是稍微懒惰,并收到了负面反馈,所以我尽我所能在这里提出一个简单而直接的问题。一如既往,在此先感谢您的帮助!当读取多个配置文件时,ConfigParser会覆盖以前的文件,为什么?
那么,有人可以解释一下我在Python的ConfigParser中遇到的奇怪行为。我有两个不同的配置文件,每个都有Section 1
。这两个文件具有不同数量的选项,但具有较少选项的文件将被覆盖。下面是代码和输出:读取配置文件test2.ini
[Section 1]
Option 1 : One
Option 2 : None
Option 3 : Three
司机:
首先配置文件:TEST1.INI
[Section 1]
Option 1 : One
Option 2 : Two
Option 3 : None
Option 4 : Four
其次配置文件
from ConfigParser import SafeConfigParser
parser = SafeConfigParser()
def ParseThis(file, section):
parser.read(file)
for option in parser.options(section):
print "\t" + option
try:
if parser.get(section, option) != 'None':
print option + ": " + parser.get(section, option)
else:
print option + ": Option doesn't exist"
except:
print option + ": Something went wrong"
print "First File:"
print "Section 1"
ParseThis('test2.ini', 'Section 1')
print "\n"
print "Second File: "
print "Section 1"
ParseThis('test1.ini', 'Section 1')
print "\n"
print "First File: "
print "Section 1"
ParseThis('test2.ini', 'Section 1')
这里是我得到的输出,这是没有意义的。
First File:
Section 1
option 1
option 1: One
option 2
option 2: Option doesn't exist
option 3
option 3: Three
Second File:
Section 1
option 1
option 1: One
option 2
option 2: Two
option 3
option 3: Option doesn't exist
option 4
option 4: Four
First File:
Section 1
option 1
option 1: One
option 2
option 2: Option doesn't exist
option 3
option 3: Three
“文档不会完全清楚”“已同意 – dtmland 2017-11-21 20:54:09