1. 创建模块 MyConfigParser
由于configparse会对内容进行大小写转换,因此对原有模块进行改写
''' python configparser can trans capital to lower,so here re-write it '''
import configparser
class MyConfigParser(configparser.ConfigParser):
def __init__(self, defaults=None):
configparser.ConfigParser.__init__(self, defaults=defaults)
# re-write optionxfom
def optionxform(self, optionstr):
return optionstr
2. 获得配置文件信息
配置文件内容如下:
cat config.ini
============================================================
#start===
[rawdata]
datapath1=/data/Rawdata/path1
datapath2=/data/Rawdata/path2
[info]
sampledir=/data/Project/info
#end====
============================================================
读取信息:
config = os.path.join('config.ini') #读取config.ini的内容
cfg = MyConfigParser() #导入上面的模块
cfg.read(config)
获得主标题内容
title = cfg.sections()
print(title) #['rawdata', 'info']
获得指定主标题内容下的所有此标题
data_k = cfg.options('rawdata')
print(data_k) #['datapath1', 'datapath2']
获得指定主标题下指定次标题的值
data1 = cfg.get('rawdata','datapath1')
print(data1) #/data/Rawdata/path1
获得指定主标题下的所有次标题的值
datapth = [cfg.get('rawdata',k) for k in cfg.options('rawdata')]
print(datapth) #['/data/Rawdata/path1', '/data/Rawdata/path2']