【发布时间】:2014-04-23 04:53:00
【问题描述】:
Python 中 Queue.PriorityQueue 类的文档如下所示:
https://docs.python.org/2/library/queue.html#Queue.PriorityQueue
它说,“条目的典型模式是以下形式的元组:(priority_number, data)”
但是,当我尝试将基本数据输入优先级队列时,我得到:
from Queue import PriorityQueue
pq = PriorityQueue()
pq.put(1, "one")
pq.put(2, "two")
pq.put(3, "three")
pq.get()
1
pq.get()
2
pq.get()
3
pq.put()中的第一个值不是优先级,第二个值是数据吗?这似乎是颠倒过来的。然后当我尝试输入(数据,优先级)时,我得到:
from Queue import PriorityQueue
pq = PriorityQueue()
pq.put("two", 4)
pq.put("one", 2)
pq.put("three", 6)
pq.get()
'one'
pq.get()
'three'
pq.get()
'two'
这顺序不正确,因为它应该输出“一、二、三” 有什么想法吗?
【问题讨论】:
标签: python priority-queue