INI 密钥作为 Configparser 中的多路径错误

INI Key as multiple paths error in Configparser

我有带有服务器路径和本地路径的 INI 文件,我只需要键作为列表而不是值。

服务器路径,工作正常... 在本地路径中,所有 6 个都是相同的 'C,但不是我在 ini 文件的关键字段中提到的完整路径

注意: 我需要单独的键作为两个部分的列表...

我的文件:

[Server]
//rotork.co.uk\files\ES-LEZO\TESTRIG-DATA\Data\EF1\Database\Test-results.mdb = SS Database 1
//rotork.co.uk\files\CN-SHANGHAI\TESTRIG-DATA\Data\CF1\Database\Test-results.mdb = RAS Database 1
//rotork.co.uk\files\CN-SHANGHAI\TESTRIG-DATA\Data\CF2\Database\Test-results.mdb = RAS Database 2
//rotork.co.uk\files\CN-SHANGHAI\TESTRIG-DATA\Data\CF3\Database\test-results.mdb = RAS Database 3
//rotork.co.uk\files\CN-SHANGHAI\TESTRIG-DATA\Data\CF4\Database\Test-results.mdb = RAS Database 4
//rotork.co.uk\files\CN-SHANGHAI\TESTRIG-DATA\Data\CF5\Database\Test-results.mdb = RAS Database 5
[Local]
C://SVN//CKMotorData//Data//Test-results_EF1.mdb = SS Database 1
C://SVN//CKMotorData//Data//Test-results_CF1.mdb = RAS Database 1
C://SVN//CKMotorData//Data//Test-results_CF2.mdb = RAS Database 2
C://SVN//CKMotorData//Data//Test-results_CF3.mdb = RAS Database 3
C://SVN//CKMotorData//Data//Test-results_CF4.mdb = RAS Database 4
C://SVN//CKMotorData//Data//Test-results_CF5.mdb = RAS Database 5

我需要所有本地部分键作为列表。

服务器部分按此代码工作

config = configparser.ConfigParser()
config.read(Configurations.ini")
MDBList = []
for key in dict(config.items('Server'): #get all keys in a section
    MDBList.append(key)

本地抛出错误

[line 16]: option '"c' in section 'MDBLocal' already exists

您的问题是由文件名中的 : 引起的,
因为 configparser 将其默认定界符设置为 delimiters=("=", ":")
- 请参阅 https://docs.python.org/3/library/configparser.html#configparser-objects 了解更多。

明确设置分隔符应该适合您。

import configparser
config = configparser.ConfigParser(delimiters=('=',))
config.read_string(ini)

for key in dict(config.items('Local')):
    print(key)
    
# c://svn//ckmotordata//data//test-results_ef1.mdb
# c://svn//ckmotordata//data//test-results_cf1.mdb
# c://svn//ckmotordata//data//test-results_cf2.mdb
# c://svn//ckmotordata//data//test-results_cf3.mdb
# c://svn//ckmotordata//data//test-results_cf4.mdb
# c://svn//ckmotordata//data//test-results_cf5.mdb