从列表中的元组中剔除字符
我有一个元组列表,格式是这样的(是通过数据库查询生成的):
[(280.73,), (281.359,), (280.630,)]
我想去掉括号和逗号,变成类似这样的格式,这样更方便转换成JSON格式。
[280.73,281.359,280.630]
有什么简单的方法可以做到这一点吗?
4 个回答
0
这些例子可以处理任意数量的元组。
>>> l = [(280.73,), (281.359,), (280.630,)]
>>> [ v for b in l for v in b ]
[280.73, 281.359, 280.63]
>>> from itertools import chain
>>> list(chain(*l))
[280.73, 281.359, 280.63]
>>>
6
假设你有一个包含单个元素的元组的列表(我们称这个列表为 l
)。你想把这个列表变成一个只包含元素的简单列表。
你可以使用列表推导式,提取每个元组里的第一个元素,这样就能完成这个任务:
>>> l = [(280.73,), (281.359,), (280.630,)]
>>> [t[0] for t in l]
[280.73000000000002, 281.35899999999998, 280.63]
>>>
5
最简单的方法可能就是用列表推导式:
cleaned = [i[0] for i in [(280.73,), (281.359,), (280.630,)]]