我有一个包含以下内容的列表:
["('apple','banana')","('orange','cherry')"]
我想从列表中删除引号并将其转换为元组 我试着用
tuple(list1)
但我得到了:
("('apple','banana')", "('orange','cherry')")
OR
我希望输出为:
('apple','banana'),('orange','cherry')
此输出也可以提供帮助:
[('apple','banana'),('orange','cherry')]
答案 0 :(得分:1)
您应该ast.literal_eval
用于此目的,这比eval
更安全。
>>> import ast
>>> x = ["('apple','banana')","('orange','cherry')"]
>>> [ast.literal_eval(i) for i in x]
[('apple', 'banana'), ('orange', 'cherry')]
答案 1 :(得分:-2)
In [1]: l = ["('apple','banana')","('orange','cherry')"]
In [2]: map(eval, l)
Out[2]: [('apple', 'banana'), ('orange', 'cherry')]