如何从 python 列表 ['(20, [50, 45], [456.6, 5675])'] 中删除外部引号?
how to remove outside quotes from python list ['(20, [50, 45], [456.6, 5675])']?
如何从此列表中删除简单引号:['(20, [50, 45], [456.6, 5675])']
我花了很多时间寻找解决方案。
我将不胜感激
IIUC,我们可以使用 ast 库中的文字 eval。
from ast import literal_eval
new_list = [literal_eval(i) for i in your_list]
print(new_list)
[(20, [50, 45], [456.6, 5675])]
使用:
my_list = ['(20, [50, 45], [456.6, 5675])']
from ast import literal_eval
list(map(literal_eval, my_list))
#[(20, [50, 45], [456.6, 5675])]
如果不是所有的都是 str 可能会失败所以:
my_list = ['(20, [50, 45], [456.6, 5675])',1]
list(map(lambda x: literal_eval(x) if isinstance(x,str) else x,my_list))
#[(20, [50, 45], [456.6, 5675]), 1]
如何从此列表中删除简单引号:['(20, [50, 45], [456.6, 5675])']
我花了很多时间寻找解决方案。
我将不胜感激
IIUC,我们可以使用 ast 库中的文字 eval。
from ast import literal_eval
new_list = [literal_eval(i) for i in your_list]
print(new_list)
[(20, [50, 45], [456.6, 5675])]
使用:
my_list = ['(20, [50, 45], [456.6, 5675])']
from ast import literal_eval
list(map(literal_eval, my_list))
#[(20, [50, 45], [456.6, 5675])]
如果不是所有的都是 str 可能会失败所以:
my_list = ['(20, [50, 45], [456.6, 5675])',1]
list(map(lambda x: literal_eval(x) if isinstance(x,str) else x,my_list))
#[(20, [50, 45], [456.6, 5675]), 1]