我有一个像这样的字符串列表:
"['USA', 'Canada', 'Mexico', 'Brazil']"
我想从字符串中检索列表,如下所示:
['USA', 'Canada', 'Mexico', 'Brazil']
我该怎么做? Itertools或list函数没有给我正确的结果。 感谢
答案 0 :(得分:4)
您可以使用eval
eval('["USA", "Canada", "Mexico", "Brazil"]')
在python shell上执行此操作,给出一个列表:
>>> eval('["USA", "Canada", "Mexico", "Brazil"]')
['USA', 'Canada', 'Mexico', 'Brazil']
>>>
答案 1 :(得分:2)
您可以使用literal_eval
模块中的ast
,例如:
from ast import literal_eval as le
data = le('["USA", "Canada", "Mexico", "Brazil"]')
print(data)
输出:
['USA', 'Canada', 'Mexico', 'Brazil']
另外,请勿使用eval()
,而是使用literal_eval()
。有关详细信息,请参阅此answer。