2014-07-01 48 views
0

我有一个名为sampl1.txt的文本文件。这是什么,是这个文本文件中: -python configparser解析保存在文本文件中的数据

111 
112 
113 
114 
115 

我有一个名为config_num.ini一个.ini文件包含: -

[num_group] 
file = sample1.txt 

这里是代码片段: -

import ConfigParser 
config = ConfigParser.ConfigParser() 

config.read('config_num.ini') 
sample = config.get('num_group','file') 
print sample 

有没有什么办法解析这个,所以当我读这个'文件'并尝试打印它时,它打印在txt文件中的元素?现在它打印sample1.txt。我想要打印的数字。

+0

config_num.ini的内容保持不变吗? – user2963623

+0

是的内容在.ini文件中保持不变 – sam

回答

3

你几乎回答了这个问题本身!

import ConfigParser 
config = ConfigParser.ConfigParser() 

config.read('config_num.ini') 
sample = config.get('num_group','file') 
sample = open(sample, 'r').read() 
print sample 
0

好吧,你不得不重写你的ConfigParser,但我只能劝加载文件,当你调用get

from ConfigParser import ConfigParser 

class MyConfigParser(ConfigParser): 
    def get(self, section, option, **kwargs): 
     ret = super(MyConfigParser, self).get(section, option, **kwargs) 

     if option == "file": 
      try: 
       return open(ret, 'r').read() 
      except IOError: 
       pass 

     return ret 

然后你就可以创建新的ConfigParser

cfg = MyConfigParser() 
cfg.read('config_num.ini') 
print cfg.get('num_group', 'file')