2016-11-09 38 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'] 
>>> 

這是安全的。

相關問題