2015-06-18 31 views
1

我在我的問題中使用Queue.PriorityQueue(),其中有幾個PriorityQueue()對象,我希望通過基於優先級的元素將它們追加在一起。Python 2.x,將PriorityQueue與另一個PriorityQueue相加

所有的PriorityQueue()對象在構成PriorityQueue()對象的元組中都有相同的類型。

有沒有一種方法(pythonic的方式?)做到這一點,而不必寫我自己的代碼呢?

回答

0
def merge_queues(queues):  
    result_queue = PriorityQueue() 
    for queue in queues: 
     while not queue.empty(): 
      result_queue.put(queue.get()) 
    return result_queue 
+0

我希望如果我們可以像追加兩個列表一起追加兩個列表(l1 + l2),但如果沒有任何內置的支持與PriorityQueue這個,那麼我將使用您的代碼片段。 –