欢迎来到山村网

Python队列的定义与使用方法

2019-03-09 13:03:51浏览:983 来源:山村网   
核心摘要:虽然Python有自己的队列模块,我们只需要在使用时引入该模块就行,但是为了更好的理解队列,自己将队列实现了一下。队列是一种数

虽然Python有自己的队列模块,我们只需要在使用时引入该模块就行,但是为了更好的理解队列,自己将队列实现了一下。

队列是一种数据结构,它的特点是先进先出,也就是说队尾添加一个元素,队头移除一个元素,类似于商场排队结账,先来的人先接账,后来的排在队尾。在我们日常生活中,发送短信就会用到队列。下面是Python实现队列的代码:

#!/usr/bin/python#coding=utf-8class Queue(object) : def __init__(self, size) :  self.size = size  self.queue = [] def __str__(self) :  return str(self.queue) #获取队列的当前长度 def getSize(self) :  return len(self.quene) #入队,如果队列满了返回-1或抛出异常,否则将元素插入队列尾 def enqueue(self, items) :  if self.isfull() :   return -1   #raise Exception("Queue is full")  self.queue.append(items) #出队,如果队列空了返回-1或抛出异常,否则返回队列头元素并将其从队列中移除 def dequeue(self) :  if self.isempty() :   return -1   #raise Exception("Queue is empty")  firstElement = self.queue[0]  self.queue.remove(firstElement)  return firstElement #判断队列满 def isfull(self) :  if len(self.queue) == self.size :   return True  return False #判断队列空 def isempty(self) :  if len(self.queue) == 0 :   return True  return False

下面是该队列类.py文件的测试代码:

if __name__ == '__main__' : queueTest = Queue(10) for i in range(10) :  queueTest.enqueue(i) print queueTest.isfull() print queueTest print queueTest.getSize() for i in range(5) :  print queueTest.dequeue() print queueTest.isempty() print queueTest print queueTest.getSize()

测试结果:

Python队列的定义与使用方法 山村

(责任编辑:豆豆)
下一篇:

JAVA如何获取HTTP请求头的方法

上一篇:

Vista如何解决不能使用智能ABC的办法

  • 信息二维码

    手机看新闻

  • 分享到
打赏
免责声明
• 
本文仅代表作者个人观点,本站未对其内容进行核实,请读者仅做参考,如若文中涉及有违公德、触犯法律的内容,一经发现,立即删除,作者需自行承担相应责任。涉及到版权或其他问题,请及时联系我们 xfptx@outlook.com