.ini文件中的字符串分隔(configparser)

时间:2016-08-05 08:16:09

标签: python configparser

我的ConfigParser.ini文件如下所示:

[Filenames]
Table1={"logs.table2",92}
Table2=("logs.table2",91)
Table3=("audit.table3",34)
Table4=("audit.table4",85)

现在例如对于Table1,我想得到“logs.table2”值和92作为单独的变量。

import configparser
filename=config.get('FIlenames','Table1')

结果我想得到:

print(filename) -> logs.table2
print(filenumber) -> 92

现在输出只是一个字符串“”logs.table2“,92”。我真的不知道如何处理,也许我应该修改我的配置文件? 什么是最好的方法?

2 个答案:

答案 0 :(得分:1)

解析.ini文件正在获取字符串。

  

[文件名]

     

表1 = logs.table2,92

     

表2 = logs.table2,91

     

表3 = audit.table3,34

     

表4 = audit.table4,85

table是一个字符串,因此您可以将其内容拆分为逗号分隔值列表

import configparser
config = configparser.ConfigParser()
config.read('config.ini')
table=config.get('Filenames','Table1')
list_table = table.split(',')
print(list_table[0])
print(list_table[1])

但是,最佳做法是将所有名称=值对分隔开来:

  

[文件名]

     

TABLE1_FILENAME = logs.table2

     

TABLE1_FILENUMBER = 92

答案 1 :(得分:1)

另一种方式:

ConfigParser.ini

[Filenames]
Table1.filename=logs.table2
Table1.filenumber=92
Table2.filename=logs.table2
Table2.filenumber=91
Table3.filename=audit.table3
Table3.filenumber=34
Table4.filename=audit.table4
Table4.filenumber=85

代码:

from configparser import ConfigParser
config = ConfigParser()
config.read('ConfigParser.ini')
print config.get('Filenames', 'Table1.filename')
print config.get('Filenames','Table1.filenumber')