Python队列的定义与使用方法示例


Posted in Python onJune 24, 2017

本文实例讲述了Python队列的定义与使用方法。分享给大家供大家参考,具体如下:

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

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

#!/usr/bin/python
#coding=utf-8
class 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队列的定义与使用方法示例

更多关于Python相关内容可查看本站专题:《Python数据结构与算法教程》、《Python函数使用技巧总结》、《Python字符串操作技巧汇总》、《Python入门与进阶经典教程》及《Python文件与目录操作技巧汇总》

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
Python模仿POST提交HTTP数据及使用Cookie值的方法
Nov 10 Python
python分析nignx访问日志脚本分享
Feb 26 Python
python模块简介之有序字典(OrderedDict)
Dec 01 Python
Python实现利用最大公约数求三个正整数的最小公倍数示例
Sep 30 Python
python matplotlib 在指定的两个点之间连线方法
May 25 Python
浅谈DataFrame和SparkSql取值误区
Jun 09 Python
pyqt5实现俄罗斯方块游戏
Jan 11 Python
python3实现弹弹球小游戏
Nov 25 Python
Python基于requests实现模拟上传文件
Apr 21 Python
python实现录制全屏和选择区域录屏功能
Feb 05 Python
python 利用openpyxl读取Excel表格中指定的行或列教程
Feb 06 Python
python - timeit 时间模块
Apr 06 Python
Python实现字符串逆序输出功能示例
Jun 24 #Python
Python正则表达式分组概念与用法详解
Jun 24 #Python
Python正则表达式常用函数总结
Jun 24 #Python
Python实现好友全头像的拼接实例(推荐)
Jun 24 #Python
Python实现的爬虫功能代码
Jun 24 #Python
python3操作mysql数据库的方法
Jun 23 #Python
Python 中pandas.read_excel详细介绍
Jun 23 #Python
You might like
php&java(三)
2006/10/09 PHP
php对数组排序的简单实例
2013/12/25 PHP
PHP常用函数和常见疑难问题解答
2014/03/05 PHP
Windows下的PHP 5.3.x安装 Zend Guard Loader教程
2014/09/06 PHP
PHP实现图片旋转效果实例代码
2014/10/01 PHP
分享php分页的功能模块
2015/06/16 PHP
解析PHP之提取多维数组指定列的方法
2017/01/03 PHP
JQuery的read函数与js的onload不同方式实现
2013/03/18 Javascript
通过伪协议解决父页面与iframe页面通信的问题
2015/04/05 Javascript
javascript结合CSS实现苹果开关按钮特效
2015/04/07 Javascript
JS+CSS实现的日本门户网站经典选项卡导航效果
2015/09/27 Javascript
JS禁用页面上所有控件的实现方法(附demo源码下载)
2015/12/17 Javascript
字太多用...代替的方法(两种)
2017/03/15 Javascript
基于Vue实现tab栏切换内容不断实时刷新数据功能
2017/04/13 Javascript
详解Node.js 中使用 ECDSA 签名遇到的坑
2018/11/26 Javascript
webpack4.x下babel的安装、配置及使用详解
2019/03/07 Javascript
使用vue-router在Vue页面之间传递数据的方法
2019/07/15 Javascript
PyQt5重写QComboBox的鼠标点击事件方法
2019/06/25 Python
pandas分区间,算频率的实例
2019/07/04 Python
python Django中models进行模糊查询的示例
2019/07/18 Python
Django发送邮件功能实例详解
2019/09/02 Python
Python numpy多维数组实现原理详解
2020/03/10 Python
浅谈Python中re.match()和re.search()的使用及区别
2020/04/14 Python
django ORM之values和annotate使用详解
2020/05/19 Python
游戏商店:Eneba
2020/04/25 全球购物
恶意软件的定义
2014/11/12 面试题
售后主管岗位职责
2013/12/08 职场文书
英语自荐信常用语句
2013/12/13 职场文书
自荐书模板
2013/12/19 职场文书
青年创业培训欢迎词
2014/01/10 职场文书
药品业务员岗位职责
2014/04/17 职场文书
小学校园之星事迹材料
2014/05/16 职场文书
理想演讲稿范文
2014/05/21 职场文书
授权委托书怎么写
2014/09/25 职场文书
实习指导教师评语
2014/12/30 职场文书
Echarts如何重新渲染实例详解
2022/05/30 Javascript