Python ConfigParser:输入节名作为变量

Python ConfigParser: input section name as variable

我想从 .cnf 文件中读取数据。它可能有很多部分,所以我想自动读出它们。我的代码如下所示:

while numberOfSections > 0:
    check = parser.get(numberOfSections, "check")
    hostname = parser.get(numberofSections, "hostname")
    ip = parser.get(numberofSections, "IP")
    port = parser.get(numberofSections, "port")
    request = parser.get(numberofSections, "request")

现在不幸的是,它只显示 "No section: 5"。在这个例子中我的 numberofSections 变量是 5,就是这样。这些部分的名称如下:

[1]
check = ''
hostname = ''
IP = ''
port = ''
request = ''

[2]
check = ''
hostname = ''
IP = ''
port = ''
request = ''

[3]
check = ''
hostname = ''
IP = ''
port = ''
request = ''

...

那么,有什么想法吗?我是新手python,所以请慢慢解释。

异常 No section: 5 被返回,因为您正在使用 while 循环,并且始终使用 true 参数。

您应该使用 for 循环,例如:

for section in config.sections():
    check = parser.get(section, "check")
    hostname = parser.get(section, "hostname")
    ip = parser.get(section, "IP")
    port = parser.get(section, "port")
    request = parser.get(section, "request")