priority_queue = PriorityQueue(maxsize=6)
for score1, score2, score3, value in huge_generator():
priority_queue.put((score1, score2, score3, value))
while pqueue:
print(pqueue.get())
假设 huge_generator() 的定义是这样的
(当然它的真正实现并不允许将其内容一次性全部保留在内存中)。
def huge_generator():
yield 2, 1, 1
yield 1, 1, 1
yield 1, 2, 3
yield 2, 4, 1
yield 1, 2, 2
yield 2, 4, 2
我的代码返回这个,到目前为止还不错。
1, 1, 1
1, 2, 2
1, 2, 3
2, 1, 1
2, 4, 1
2, 4, 2
现在我想把顺序自定义为升序、降序、降序,即。
1,2,3
1,2,2
1,1,1