如何在Python中将列表的元组列表合并到元组列表中

我有一个这样的数据示例列表:


list_ = [

    (['0.640', '0.630', '0.64'], ['0.61', '0.65', '0.53']), 

    (['20.00', '21.00', '21.00'], ['21.00', '22.00', '22.00']), 

    (['0.025', '0.025', '0.026'], ['0.150', '0.150', '0.130'])

我试图将元组中的所有列表合并到元组中,这将是元组列表的结果。


现在我想得到一个合并列表如下


output = [

    ('0.640', '0.630', '0.64', '0.61', '0.65', '0.53'), 

    ('20.00', '21.00', '21.00', '21.00', '22.00', '22.00'), 

    ('0.025', '0.025', '0.026', '0.150', '0.150', '0.130')

]

# or 

output = [

    ['0.640', '0.630', '0.64', '0.61', '0.65', '0.53'], 

    ['20.00', '21.00', '21.00', '21.00', '22.00', '22.00'], 

    ['0.025', '0.025', '0.026', '0.150', '0.150', '0.130']

]

任何帮助表示赞赏。提前致谢!


紫衣仙女
浏览 112回答 3
3回答

守着星空守着你

from itertools import chain output = [tuple(chain.from_iterable(t)) for t in list_]使用chain来自itertools.

料青山看我应如是

列表理解[[item for internal_list_ in tuple_ for item in internal_list_] for tuple_ in list_]麻木np.array(list_).reshape((len(list_), -1))

ITMISS

output = [x[0]+x[1] for x in list_]如果您想要一个通用的解决方案,则不必itertools像其他人建议的那样在这种情况下导入。这适用于 n 元组:output = [sum([*x], []) for x in list_]当您没有数千个列表时,此解决方案将非常出色,但其他情况下则较差。
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python