2016-11-24 43 views
0

假设一个字符串s="[1,2,3]"
如何列表以字符串形式转换到一个列表

我想要列表是l=[1,2,3],其中type(l)list


我怎样才能做到这一点

+3

看一看['ast.literal_eval'(https://docs.python.org/2/library/ast.html#ast.literal_eval)(并且不要使用['eval'](https://docs.python.org/2/library/functions.html#eval)) – khelwood

+0

尝试'l = eval(s)' –

+0

试试这个: 'l = s.strip('[]')。split(',')' – FeedTheWeb

回答

0

尝试[x for x in map(int, s[1:-1].split(","))]

0

试试这个,

In [3]: l = eval(s) 

In [4]: print l 
[1, 2, 3] 
+4

你不应该建议[非常危险的函数,如'eval'](http://nedbatchelder.com/blog/201206/eval_really_is_dangerous.html)当有更好的选择。 – Matthias

0
import json 

s="[1,2,3]" 
s_list = json.loads(s) 
print(type(s_list)) 

出来:

<type 'list'> 
+1

这不适用于s =“[1,2,'abn']” – user5319825

相关问题