讀 csv 文件的時候讀到這樣的 str:
["item1", "item2", "item3"]
顯然這是一個 list
可是我該如何把它轉化成 list 呢?
用 list()
的話每個字符會被當成一個 item
用切詞的方法也應該可以但會麻煩
但是有沒有直接的方法呢?
問題出自 segmentfault, by persona
使用 eval
, 不過要小心他的風險:
In [1]: s = '["item1", "item2", "item3"]'
In [2]: lst = eval(s)
In [3]: lst
Out[3]: ['item1', 'item2', 'item3']
對於 Python 的 subset 進行求值, 使用 ast.literal_eval
是對的。
# by manong
>>> import ast
>>> ast.literal_eval('["item1", "item2", "item3"]')
['item1', 'item2', 'item3']
下面文章值得一讀: