根据动态列表从 ini 文件中检索多个配置密钥
Retrieve multiple configuration keys from ini file based on dynamic list
我无法将列表的值传递给 for
循环,该循环将 return 在运行时在配置文件中分配给它的值。
我的配置文件是 demo.ini
:
[DEMFILE]
Name='XYZABC'
Surname='TYUIO'
Code='123'
City='Kolkata'
我有一个列表,其中包含如下参数:
from configparser import ConfigParser
mylist=['Name','Code']
mylist_count=len(mylist)
dmfg=config_object["DEMFILE"]
for i in range(mylist_count):
getValue=dmfg[i] # ---> Throws error
print(f'The value of {i} is : {getValue}')
getValue
的预期输出如下所示:
The value of Name is : XYZABC
The value of City is : Kolkata
我想要列表中应该检查配置文件的任何值和return分配给它的输出。
例如:Name
--> XYZABC
(来自配置文件)。
您可以创建 ConfigParser
的实例,读取 .ini 文件并使用键而不是其索引来检索值:
Python 3.9.0 (tags/v3.9.0:9cf6752, Oct 5 2020, 15:34:40) [MSC v.1927 64 bit (AMD64)] on win32
>>> from configparser import ConfigParser
>>> config = ConfigParser()
>>> config.read("demo.ini")
['demo.ini']
>>> keys = ["Name", "Code"]
>>> vals = [config["DEMFILE"][x] for x in keys]
>>> vals
["'XYZABC'", "'123'"]
如果引号看起来很奇怪,请配置值 typically aren't quoted。从配置中删除引号或使用 [x[1:-1] for x in vals]
.
删除它们
我无法将列表的值传递给 for
循环,该循环将 return 在运行时在配置文件中分配给它的值。
我的配置文件是 demo.ini
:
[DEMFILE]
Name='XYZABC'
Surname='TYUIO'
Code='123'
City='Kolkata'
我有一个列表,其中包含如下参数:
from configparser import ConfigParser
mylist=['Name','Code']
mylist_count=len(mylist)
dmfg=config_object["DEMFILE"]
for i in range(mylist_count):
getValue=dmfg[i] # ---> Throws error
print(f'The value of {i} is : {getValue}')
getValue
的预期输出如下所示:
The value of Name is : XYZABC
The value of City is : Kolkata
我想要列表中应该检查配置文件的任何值和return分配给它的输出。
例如:Name
--> XYZABC
(来自配置文件)。
您可以创建 ConfigParser
的实例,读取 .ini 文件并使用键而不是其索引来检索值:
Python 3.9.0 (tags/v3.9.0:9cf6752, Oct 5 2020, 15:34:40) [MSC v.1927 64 bit (AMD64)] on win32
>>> from configparser import ConfigParser
>>> config = ConfigParser()
>>> config.read("demo.ini")
['demo.ini']
>>> keys = ["Name", "Code"]
>>> vals = [config["DEMFILE"][x] for x in keys]
>>> vals
["'XYZABC'", "'123'"]
如果引号看起来很奇怪,请配置值 typically aren't quoted。从配置中删除引号或使用 [x[1:-1] for x in vals]
.