修改Python ConfigParser option 大小写的问题

2017-01-13 10:53:23来源:csdn作者:xluren人点击


ConfigParser option 无论大小写,都会转换成小写,看了源代码发现了一行这样的代码


<span style="font-size:18px;">def optionxform(self, optionstr):
return optionstr.lower()</span>解决办法:


1.修改源代码,好处,方便快捷,但是不好处,别人使用会受影响


2.继承重写方法的方式,代码如下所示:


<span style="font-size:18px;">[xluren@test config]$ cat read_conf.py
#!/usr/bin/python
import ConfigParser
class myconf(ConfigParser.ConfigParser):
def __init__(self,defaults=None):
ConfigParser.ConfigParser.__init__(self,defaults=None)
def optionxform(self, optionstr):
return optionstr
conf=ConfigParser.ConfigParser()
conf.read("db.conf")
print conf.sections()
fori in conf.sections():
print conf.options(i)
for option inconf.options(i):
print option,conf.get(i,option)
conf=myconf()
conf.read("db.conf")
print conf.sections()
fori in conf.sections():
print conf.options(i)
for option inconf.options(i):
print option,conf.get(i,option)
[xluren@test config]$ </span>conf文件


<span style="font-size:18px;">[xluren@test config]$ cat db.conf
[hello]
a=100
b=1000
A=110000
[xluren@test config]$ </span>执行结果


<span style="font-size:18px;">[xluren@test config]$ python read_conf.py
['hello']
['a', 'b']
a 110000
b 1000
['hello']
['a', 'b', 'A']
a 100
b 1000
A 110000
[xluren@test config]$ </span>

最新文章

123

最新摄影

微信扫一扫

第七城市微信公众平台