2016-11-09 71 views
0

我有一个文件字符串:转换一个字符串,它看起来像一个表到实际列表

[u'Some string'] 

我读它作为我的python脚本的字符串,我需要将其转换回名单。这看起来像一个可怕的想法,但到目前为止eval似乎工作正常:

>>> eval("[u'Some string']") 
[u'Some string'] 
>>> type(eval("[u'Some string']")) 
<type 'list'> 

但这似乎是一个非常可怕的想法。任何方式来优雅地做到这一点?

+0

'ast.literal_eval'完全符合您的要求 – inspectorG4dget

回答

3

eval是不安全的。然而,仅使用ast.literal_eval

>>> import ast 
>>> s = "[u'Some string']" 
>>> ast.literal_eval(s) 
[u'Some string'] 
>>> 

这是安全的。

相关问题