本文实例讲述了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队列queue模块详解
# Python实现简单多线程任务队列
# 详解Python中的四种队列
# Python实现优先级队列结构的方法详解
# 栈和队列数据结构的基本概念及其相关的Python实现
# python队列Queue的详解
# Python多线程和队列操作实例
# Python3 queue队列模块详细介绍
# python 队列详解及实例代码
# Python实现队列的方法
# python 队列基本定义与使用方法【初始化、赋值、判断等】
# 数据结构
# 抛出
# 移除
# 自己的
# 的人
# 进阶
# 操作技巧
# 就会
# 是一种
# 相关内容
# 只需
# 要在
# 就行
# 给大家
# 满了
# 排在
# 更多关于
# 类似于
# 所述
# 先来
相关文章:
合肥制作网站的公司有哪些,合肥聚美网络科技有限公司介绍?
广德云建站网站建设方案与建站流程优化指南
c# F# 的 MailboxProcessor 和 C# 的 Actor 模型
,购物网站怎么盈利呢?
h5在线制作网站电脑版下载,h5网页制作软件?
如何高效利用亚马逊云主机搭建企业网站?
如何在阿里云虚拟服务器快速搭建网站?
如何在景安服务器上快速搭建个人网站?
建站一年半SEO优化实战指南:核心词挖掘与长尾流量提升策略
公司网站设计制作厂家,怎么创建自己的一个网站?
高端建站三要素:定制模板、企业官网与响应式设计优化
C#怎么使用委托和事件 C# delegate与event编程方法
建站之星后台管理:高效配置与模板优化提升用户体验
如何通过建站之星自助学习解决操作问题?
外贸公司网站制作,外贸网站建设一般有哪些步骤?
网站海报制作教学视频教程,有什么免费的高清可商用图片网站,用于海报设计?
齐河建站公司:营销型网站建设与SEO优化双核驱动策略
视频网站制作教程,怎么样制作优酷网的小视频?
建站之星代理商如何保障技术支持与售后服务?
如何用花生壳三步快速搭建专属网站?
代购小票制作网站有哪些,购物小票的简要说明?
为什么Go需要go mod文件_Go go mod文件作用说明
网站app免费制作软件,能免费看各大网站视频的手机app?
如何通过西部建站助手安装IIS服务器?
网站按钮制作软件,如何实现网页中按钮的自动点击?
php json中文编码为null的解决办法
建站之星导航菜单设置与功能模块配置全攻略
建站主机与虚拟主机有何区别?如何选择最优方案?
怎么制作一个起泡网,水泡粪全漏粪育肥舍冬季氨气超过25ppm,可以有哪些措施降低舍内氨气水平?
建站之星手机一键生成:多端自适应+小程序开发快速建站指南
如何选择高效便捷的WAP商城建站系统?
如何实现建站之星域名转发设置?
rsync同步时出现rsync: failed to set times on “xxxx”: Operation not permitted
C#如何在一个XML文件中查找并替换文本内容
如何通过虚拟机搭建网站?详细步骤解析
如何快速搭建支持数据库操作的智能建站平台?
建站主机默认首页配置指南:核心功能与访问路径优化
专业公司网站制作公司,用什么语言做企业网站比较好?
企业微网站怎么做,公司网站和公众号有什么区别?
如何在IIS7上新建站点并设置安全权限?
最好的网站制作公司,网购哪个网站口碑最好,推荐几个?谢谢?
高性能网站服务器部署指南:稳定运行与安全配置优化方案
电脑免费海报制作网站推荐,招聘海报哪个网站多?
制作营销网站公司,淘特是干什么用的?
制作假网页,招聘网的薪资待遇,会有靠谱的吗?一面试又各种折扣?
已有域名和空间,如何快速搭建网站?
C#怎么创建控制台应用 C# Console App项目创建方法
如何选择最佳自助建站系统?快速指南解析优劣
潮流网站制作头像软件下载,适合母子的网名有哪些?
网站制作服务平台,有什么网站可以发布本地服务信息?
*请认真填写需求信息,我们会在24小时内与您取得联系。