Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/python-2.7/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
String Python将字符串列表转换为列表_String_Python 2.7_List_Type Conversion - Fatal编程技术网

String Python将字符串列表转换为列表

String Python将字符串列表转换为列表,string,python-2.7,list,type-conversion,String,Python 2.7,List,Type Conversion,我有一个python列表,格式如下: x = ['[1,2,3]', '[4,5,6,]', ...] 有没有办法将“内部列表”转换为实际列表?因此,输出将是 x = [[1,2,3], [4,5,6], ....] 谢谢 您可以用于这种转换。您可以使用map将转换应用于列表中的每个元素 from ast import literal_eval x = ['[1,2,3]', '[4,5,6,]'] x = map(literal_eval, x) print x 给予 另一个使用jso

我有一个python列表,格式如下:

x = ['[1,2,3]', '[4,5,6,]', ...]
有没有办法将“内部列表”转换为实际列表?因此,输出将是

x = [[1,2,3], [4,5,6], ....]
谢谢

您可以用于这种转换。您可以使用
map
将转换应用于列表中的每个元素

from ast import literal_eval

x = ['[1,2,3]', '[4,5,6,]']
x = map(literal_eval, x)
print x
给予


另一个使用
json
的示例:

>>> import json
>>> x = ['[1,2,3]', '[4,5,6]']
>>> [json.loads(y) for y in x]
[[1, 2, 3], [4, 5, 6]]

请将字符串限制为
dict
s和
list
s。

您可以使用eval将字符串作为代码进行求值

x = ['[1,2,3]', '[4,5,6,]']
y = [eval(s) for s in x]

通常不鼓励使用
eval
。与khelwood提出的答案相比,我接受了这个答案(他的解决方案也解决了我的问题),因为我的完整代码已经使用了json库。
ast.literal\u eval
非常好,它可以转换许多类型,但如果列表中有任何标记(例如
等),则会出现错误
x = ['[1,2,3]', '[4,5,6,]']
y = [eval(s) for s in x]