讀寫配置文件 by limodou
下面是我根據(jù)sakulagi的思路改寫的程序:
#! /usr/bin/python
import os
import sys
class Ini:
""" Assume that property file is "ARG=VALUE" format and no space is allowed on either side of \"=\" """
def __init__(self, pfile):
self.items = {}
for line in file(pfile):
line = line.strip()
if not line: continue
if line.startswith('#'): continue
key, value = line.split('=', 1)
self.items[key.strip()] = value.strip()
def getdict(self):
return self.items
if __name__ == "__main__":
print "Self Test Begin"
# Generate the test file
if len(sys.argv) == 1:
os.system("echo # Comment >; test.properties"
os.system("echo LOCK=true >;>; test.properties"
os.system("echo TEST.config.1=234 >;>; test.properties"
pf = Ini("test.properties"
;
else:
pf = Ini(sys.argv[1])
print pf.getdict()
這里最后我的生成test.properties與原程序不同,因為發(fā)現(xiàn)在里面的雙引號也輸出到文件中去了,因此我去掉了。
#! /usr/bin/python
import os
import sys
class Ini:
""" Assume that property file is "ARG=VALUE" format and no space is allowed on either side of \"=\" """
def __init__(self, pfile):
self.items = {}
for line in file(pfile):
line = line.strip()
if not line: continue
if line.startswith('#'): continue
key, value = line.split('=', 1)
self.items[key.strip()] = value.strip()
def getdict(self):
return self.items
if __name__ == "__main__":
print "Self Test Begin"
# Generate the test file
if len(sys.argv) == 1:
os.system("echo # Comment >; test.properties"

os.system("echo LOCK=true >;>; test.properties"

os.system("echo TEST.config.1=234 >;>; test.properties"

pf = Ini("test.properties"

else:
pf = Ini(sys.argv[1])
print pf.getdict()
這里最后我的生成test.properties與原程序不同,因為發(fā)現(xiàn)在里面的雙引號也輸出到文件中去了,因此我去掉了。
Powered by ScribeFire.
的處理