Python 如何在多个迭代器上不断迭代?
有人能帮我写一段代码,以便在多个迭代器上不断迭代吗。 例如,假设我有几个列表(例如:[1,9]和[2,3,4]),我想从这些列表中得到一个iterable,生成1,2,3,4和9。当然,这个想法是使用更大更复杂的迭代器(否则很容易合并和排序)Python 如何在多个迭代器上不断迭代?,python,iterator,Python,Iterator,有人能帮我写一段代码,以便在多个迭代器上不断迭代吗。 例如,假设我有几个列表(例如:[1,9]和[2,3,4]),我想从这些列表中得到一个iterable,生成1,2,3,4和9。当然,这个想法是使用更大更复杂的迭代器(否则很容易合并和排序) 谢谢大家! heapq正是为满足您的需要而设计的:它创建了一个迭代器,因此您不必处理庞大的列表。下面是一个简单示例的代码: import heapq a = [1, 4, 7, 10] b = [2, 5, 6, 11] for c in heapq.me
谢谢大家! heapq正是为满足您的需要而设计的:它创建了一个迭代器,因此您不必处理庞大的列表。下面是一个简单示例的代码:
import heapq
a = [1, 4, 7, 10]
b = [2, 5, 6, 11]
for c in heapq.merge(a, b):
print(c)
当然,它只在列表已排序时有效,如果未排序,则必须在排序之前对其进行排序。您的所有多个列表是否都已排序?已经提出的问题:)@Jorropo,它只加入迭代器此问题重点是以排序方式加入谢谢!适用于排序列表。