我想让ConfigParser为一个看似简单的问题而工作,但我有一个古老的2.2 Jython系统(无法更新)。
我想循环遍历配置文件中的各个部分,并对其值使用相同的操作。第一部分读得很好但是在循环的第二次迭代中我得到了#34; exceptions.AttributeError"。
[DEFAULT]
uHome=/opt/app/myapp/configs
[Domains]
DomainList=Dom1,Dom2
[Dom1]
userconfigFile=idm-JIT.config
userkeyFile=idm-JIT.key
admU=http://idmap01xj:7001
[Dom2]
userconfigFile=iam-JIT.config
userkeyFile=iam-JIT.key
admU=http://idmap01xjvip:7003
我的(大大)简化脚本:
import ConfigParser
config = ConfigParser.ConfigParser()
try:
config.optionxform = str
config.read(domainConfigFile);
domainList = config.get("Domains","DomainList")
domainNames = domainList.split(",")
for dName in domainNames:
UCF = config.get(dName,"uHome") + '/'+config.get(dName,"userConfigFile")
UKF = config.get(dName,"uHome") + '/'+config.get(dName,"userKeyFile")
admU = config.get(dName,"admU")
print "UCF=["+UCF+"] UKF=["+UKF+"] admU=["+admU+"]"
except:
print "Error occurred"
我的Python还不是很流利(但这个问题让我如此)。我一直在研究类似的问题并使用一些修改dict的片段,并且它们在一个库存Python 2.6解释器中工作,但它们都在Jython 2.2.6中惨遭失败。如何在不同的部分伪造相同的密钥名称,以便它们都可以寻址?