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

separation of the string in .ini file (configparser)

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

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

现在以表 1 为例,我想获得 "logs.table2" 值和 92 作为单独的变量。

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

结果我想得到:

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

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

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

[Filenames]

Table1=logs.table2,92

Table2=logs.table2,91

Table3=audit.table3,34

Table4=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])

但是,最佳做法是将所有名称=值对放在单独的行中:

[Filenames]

TABLE1_FILENAME = logs.table2

TABLE1_FILENUMBER = 92

另一种方式:

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')