从配置文件读取Python列表

问题描述

我有一个配置文件,其中包含一个列表。

[my_variables]
dict = [{'name': 'Jack','age': 26},{'name': 'Ray','age': 34},{'name': 'Aby','age': 18}]

我正在尝试使用ConfigParser读取此列表。但是,它作为字符串读取。我怎么能按原样阅读它?

>>> import ConfigParser,os
>>> config = ConfigParser.ConfigParser()
>>> config.readfp(open('myConfig.properties'))
>>> a = config.get('my_variables','dict')
>>> a
"[{'name': 'Jack','age': 18}]"

>>> type(a)
<type 'str'>

预期结果: a应该是提及的列表。

请提出任何建议。

谢谢...。

解决方法

这行得通...

import ConfigParser,os
config = ConfigParser.ConfigParser()
config.readfp(open('myConfig.properties'))
a = config.get('my_variables','dict')
b = ast.literal_eval(a)
b
[{'age': 26,'name': 'Jack'},{'age': 34,'name': 'Ray'},{'age': 18,'name': 'Aby'}]


type(b)
<type 'list'>