首页 > 解决方案 > 删除元组列表中的字符串元组

问题描述

我正在尝试将元组和字符串列表转换为元组列表,如下所示:

我有:

[In]: print(lista)
[Out]: [
  ('Enero', "('90.0', '229.0', '0.264', '0.672')"),
  ('Febrero', "('76.0', '262.0', '0.247', '0.821'')"),
  ('Marzo', "('95.0', '133.0', '0.279', '0.390')"),
] 

我试图得到:

[In]: print(lista)
[Out]: [
  ('Enero', '90.0', '229.0', '0.264', '0.672'),
  ('Febrero', '76.0', '262.0', '0.247', '0.821'),
  ('Marzo', '95.0', '133.0', '0.279', '0.390'),
] 

知道如何删除(and)吗?

标签: pythonpython-3.x

解决方案


您可以使用ast.literal_eval将字符串转换为元组

lista = [('Enero', "('90.0', '229.0', '0.264', '0.672')"), ('Febrero', "('76.0', '262.0', '0.247', '0.821')"), ('Marzo', "('95.0', '133.0', '0.279', '0.390')")]
lista = [(i,) + literal_eval(j) for i,j in lista]

输出

[('Enero', '90.0', '229.0', '0.264', '0.672'),
 ('Febrero', '76.0', '262.0', '0.247', '0.821'),
 ('Marzo', '95.0', '133.0', '0.279', '0.390')]

推荐阅读