我有我想要轉換爲元組列表的字符串列表。下面是一個例子。轉換我想要轉換爲元組列表的字符串列表
['(0, "ass\'")', "(-1, '\\n print self.amount')", "(0, '\\n\\n ')"]
要轉換成。
[(0, "ass\'"), (-1, '\\n print self.amount'), (0, '\\n\\n ')]
有什麼想法嗎?
我有我想要轉換爲元組列表的字符串列表。下面是一個例子。轉換我想要轉換爲元組列表的字符串列表
['(0, "ass\'")', "(-1, '\\n print self.amount')", "(0, '\\n\\n ')"]
要轉換成。
[(0, "ass\'"), (-1, '\\n print self.amount'), (0, '\\n\\n ')]
有什麼想法嗎?
[ast.literal_eval(x) for x in L]
的函數eval是你需要什麼,我想,但要小心它的使用:
>>> l = ['(0, "ass\'")', "(-1, '\\n print self.amount')", "(0, '\\n\\n ')"]
>>> map(eval, l)
[(0, "ass'"), (-1, '\n print self.amount'), (0, '\n\n ')]
map(ast.literal_eval, list_of_tuple_strings)
不像eval
,ast.literal_eval只會評價文字,而不是函數調用,所以它更安全。
'eval'不安全,但'literal_eval'是。 – 2011-03-08 09:01:23
我不知道這個,謝謝! – Emmanuel 2011-03-08 16:30:54