Python不会将字符串列表转换为常规列表吗?

时间:2019-05-29 11:37:40

标签: python list

我有一个类似下面的字符串输出

result = "[(u'Delhi', 20199330), (u'Mumbai', 134869470), (u'Kolkata', 6678446)]"

现在我想将其转换为常规数组。这就是我要做的

import json

print(json.loads(result))

但是我收到以下错误

ValueError: No JSON object could be decoded

现在我知道result不是json。但是python确实通过执行类似的操作将字符串列表转换为常规列表

some_list = "[10, 20, 30]"

print(json.loads(some_list))

因此,我希望它将result(这是一个元组的字符串列表)转换为常规的元组列表。但这会引发错误。

如何将result转换为常规列表?

1 个答案:

答案 0 :(得分:1)

尝试一下

>>> result = "[(u'Delhi', 20199330), (u'Mumbai', 134869470), (u'Kolkata', 6678446)]"
>>> import ast
>>> ast.literal_eval(result)
[('Delhi', 20199330), ('Mumbai', 134869470), ('Kolkata', 6678446)]