python - 列表理解合并python中的各种列表

标签 python list list-comprehension

我需要绘制大量数据样本,每个样本都存储在一个整数列表中。我想从很多串联的列表中创建一个列表,以便使用 enumerate(big_list) 绘制它以获得固定偏移的 x 坐标。 我当前的代码是:

biglist = []
for n in xrange(number_of_lists):
    biglist.extend(recordings[n][chosen_channel])
for x,y in enumerate(biglist):
    print x,y

注意:number_of_lists 和 chosen_channel 是在别处定义的整型参数,以 print x,y 为例(其实还有其他的语句来绘制点。

我的问题是: 有没有更好的方法,例如列表理解或其他操作,在没有循环和预先声明的空列表的情况下获得相同的结果(合并列表)?

谢谢

最佳答案

import itertools
for x,y in enumerate(itertools.chain(*(recordings[n][chosen_channel] for n in xrange(number_of_lists))):
    print x,y

您可以将 itertools.chain() 视为管理单个列表上的迭代器。它会记住哪个列表以及您在列表中的位置。这为您节省了创建大列表所需的所有内存。

关于python - 列表理解合并python中的各种列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5113822/

相关文章:

python - 从 Python 中的字符串创建重叠子字符串列表的最快方法

python - 为什么 Python 中没有元组理解?

scala - 对于 Haskell 中的列表理解,Scala 中的等价物?

Python:查找字典中的差异

python - 将 python 项目与虚拟环境相关联

python - 为 "Four fours"谜题制作解谜器

python - 如果它与列表中的项目匹配,则替换字符串中的项目

python - 如何在 Python 中按元素连接列表?

list - grails如何检查值是否在gsp的列表中

python - 如何在列表理解中获取列表的长度