Python语言与信息数据获取和机器学习生活不易 我用python我的Python自学之路

队列

2016-11-13  本文已影响22人  苟雨

队列一个重要的数据结构,也比较简单。python内置了队列的实现,十分好用,
下面就是一些例子:

import Queue
q = Queue.Queue() #普通队列
for i in range(5):    
  q.put(i)
while not q.empty():    
  print q.get()

后进先出队列,这个有点像栈,也可以当作栈来用。


q = Queue.LifoQueue()
for i in range(5):    
  q.put(i)
while not q.empty():    
  print q.get()

优先队列,可以给队列里的元素设置优先级,弹出时优先级高的先弹出。


q = Queue.PriorityQueue()
q.put([2,'hello'])
q.put([4,'good'])
print q.get()
class Job():    
  def __init__(self,describe,priority):        
    self.describe = describe        
    self.priority = priority    
  def __cmp__(self, other):        
    return cmp(self.priority,other.priority)
q1 = Queue.PriorityQueue(0)
q1.put( Job(3, 'Mid-level job'))#也可以传入对象
q1.put( Job(10, 'Low-level job'))
q1.put( Job(1, 'Important job'))
print q1.get().describe
上一篇 下一篇

猜你喜欢

热点阅读