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使用mysql数据库示例代码
May 21 Python
Django项目中包含多个应用时对url的配置方法
May 30 Python
tensorflow实现逻辑回归模型
Sep 08 Python
python解析json串与正则匹配对比方法
Dec 20 Python
Django 开发环境配置过程详解
Jul 18 Python
django用户登录验证的完整示例代码
Jul 21 Python
python中几种自动微分库解析
Aug 29 Python
python数据爬下来保存的位置
Feb 17 Python
在python中使用nohup命令说明
Apr 16 Python
Pytorch使用PIL和Numpy将单张图片转为Pytorch张量方式
May 25 Python
Ubuntu20.04环境安装tensorflow2的方法步骤
Jan 29 Python
Python中生成随机数据安全性、多功能性、用途和速度方面进行比较
Apr 14 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
音乐朗读剧《MARS RED》2021年TV动画化决定!
2020/03/06 日漫
PHP删除数组中的特定元素的代码
2012/06/28 PHP
php 批量生成html,txt文件的实现代码
2013/06/26 PHP
php查找任何页面上的所有链接的方法
2013/12/03 PHP
php防止sql注入代码实例
2013/12/18 PHP
php layui实现前端多图上传实例
2019/07/30 PHP
firefox firebug中文入门教程 脚本之家新年特别版
2010/01/02 Javascript
如何用JavaScript动态呼叫函数(两种方式)
2013/05/03 Javascript
jquery.form.js实现将form提交转为ajax方式提交的方法
2015/04/07 Javascript
JS+CSS实现自适应选项卡宽度的圆角滑动门效果
2015/09/15 Javascript
Jquery 1.9.1源码分析系列(十二)之筛选操作
2015/12/02 Javascript
jQuery validate插件submitHandler提交导致死循环解决方法
2016/01/21 Javascript
详解微信小程序开发之下拉刷新 上拉加载
2016/11/24 Javascript
AngularJS过滤器filter用法总结
2016/12/13 Javascript
微信小程序 input输入框控件详解及实例(多种示例)
2016/12/14 Javascript
微信小程序网络请求wx.request详解及实例
2017/05/18 Javascript
ReactNative踩坑之配置调试端口的解决方法
2017/07/28 Javascript
详解Node.js 中使用 ECDSA 签名遇到的坑
2018/11/26 Javascript
vue 实现图片懒加载功能
2020/12/31 Vue.js
[03:17]DOTA2英雄基础教程 剧毒术士
2013/12/12 DOTA
Python中序列的修改、散列与切片详解
2017/08/27 Python
Django 1.10以上版本 url 配置注意事项详解
2019/08/05 Python
Python GUI学习之登录系统界面篇
2019/08/21 Python
Python实现的北京积分落户数据分析示例
2020/03/27 Python
python中upper是做什么用的
2020/07/20 Python
通过Python pyecharts输出保存图片代码实例
2020/11/25 Python
Myprotein蛋白粉美国官网:欧洲畅销运动营养品牌
2016/11/15 全球购物
全球性的在线时尚男装零售商:boohooMAN
2016/12/17 全球购物
Julep官网:美容产品和指甲油
2017/02/25 全球购物
茱莉蔻美国官网:Jurlique美国
2020/11/24 全球购物
应届毕业生求职信范文分享
2013/12/26 职场文书
党员自我批评与反省材料
2014/02/10 职场文书
党员群众路线承诺书
2014/05/20 职场文书
优秀本科毕业生自荐信
2014/07/04 职场文书
二手房购房协议书范本
2014/10/05 职场文书
环保宣传语大全
2015/07/13 职场文书