Say you have, e.g.:
$ cat my.props
first: primo
second: secondo
third: terzo
i.e. would be a .config
format except that it's missing a leading section name. Then, it easy to fake the section header:
import ConfigParser
class FakeSecHead(object):
def __init__(self, fp):
self.fp = fp
self.sechead = '[asection]
'
def readline(self):
if self.sechead:
try:
return self.sechead
finally:
self.sechead = None
else:
return self.fp.readline()
usage:
cp = ConfigParser.SafeConfigParser()
cp.readfp(FakeSecHead(open('my.props')))
print cp.items('asection')
output:
[('second', 'secondo'), ('third', 'terzo'), ('first', 'primo')]
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…