如何创建包含类实现的优先级队列?

时间:2019-07-17 20:14:50

标签: python priority-queue

我实现了任务类,我想将所有任务插入优先级队列,python中有一个?我需要在类中实现一些func使其具有可比性吗?

每个班级都有优先级编号。

1 个答案:

答案 0 :(得分:1)

Python中确实存在优先级队列,请参见此处:https://docs.python.org/3/library/queue.html#Queue.PriorityQueue

这是一个简单的例子:

from queue import PriorityQueue

q = PriorityQueue()

q.put((2, 'code'))
q.put((1, 'eat'))
q.put((3, 'sleep'))

while not q.empty():
    next_item = q.get()
    print(next_item)

# Result:
#   (1, 'eat')
#   (2, 'code')
#   (3, 'sleep')

您也可以使用heapq。

在不了解更多信息的情况下无法评论您的实施...