列表类型转换

2024-04-27 02:45:26 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个pdb调试器告诉我的数据集,如下所示

set1 : [(4.4, ), (4.8, ), (4.2, ), (4.0, ), (4.2, ), (4.8, ), (2.0, ), (2.4, ), (3.0, )]

我需要它是在下面的格式

set2 : [4.4, 4.8, 4.2, 4.0, 4.2, 4.8, 2.0, 2.4, 3.0]

集合1和集合2是什么类型或类型的变体,以及如何将集合1转换为集合2。你知道吗

我是python的新手,需要很快完成这项工作,所以我没有时间学习刚才应该学习的细节-任何帮助都将不胜感激。你知道吗

谢谢!你知道吗


Tags: 数据类型格式时间变体细节调试器pdb
3条回答

尝试使用itertools.chain

from itertools import chain

set1 =[(4.4, ), (4.8, ), (4.2, ), (4.0, ), (4.2, ), (4.8, ), (2.0, ), (2.4, ), (3.0, )]

print list(chain.from_iterable(set1))
#output [4.4, 4.8, 4.2, 4.0, 4.2, 4.8, 2.0, 2.4, 3.0]

尝试使用:

set1 = [(4.4, ), (4.8, ), (4.2, ), (4.0, ), (4.2, ), (4.8, ), (2.0, ), (2.4, ), (3.0, )]
set2 = map(lambda x: x[0], set1)

set1是一个元素元组的列表,map返回将作为第一个参数传递的函数应用于作为第二个参数传递的集合的结果。 在这个答案中,该函数返回元组的第一个元素。你知道吗

一个更具python风格的方法是使用列表理解:

set2 = [x[0] for x in set1]

这些数据看起来非常熟悉,值得一试

print list(zip(*set1)[0])

相关问题 更多 >