我使用config.ini文件来存储我所有的配置。
我需要在config文件中存储一个字典和一个列表,然后在我的main.py文件中使用configparser解析它,有人能告诉我该怎么做吗?
config.ini:
[DEFAULT]
ADMIN = xyz
SOMEDICT = {'v1': 'k1', 'v2': 'k2'}
SOMELIST = [v1, v2]
main.py:
config = configparser.ConfigParser()
config.read('config.ini')
secret_key = config['DEFAULT']['ADMIN']
如果没有办法做到这一点,那么json格式的config是一个好的选择吗?
4条答案
按热度按时间wpcxdonn1#
ConfigParser只会将这些元素作为字符串提供给您,然后您需要解析它们。
作为一种替代方案,YAML是配置文件的一个很好的选择,因为它很容易被人阅读。
Python代码应该是
erhoui1w2#
包含此数据的JSON文件可能如下所示:
然后在python中:
z9ju0rcb3#
我建议使用
json
:对于那些使用JSON的字段,您需要在保存之前执行
dumps
,在阅读之后执行loads
。更好的解决方案是对整个配置文件使用JSON:
然后你可以这样做:
nnt7mjpx4#
可以从ini文件中存储和读取Dict或List数据
在阅读值之后,你只需要使用内置的**eval()**函数,默认情况下,变量将是字符串类型,eval将检查并将其转换为字典数据类型。
您可以尝试以下代码