欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python隊列的定義與使用方法示例

 更新時間:2017年06月24日 10:25:46   作者:世界看我我看世界  
這篇文章主要介紹了Python隊列的定義與使用方法,結(jié)合具體實例形式分析了Python定義及使用隊列的具體操作技巧與注意事項,需要的朋友可以參考下

本文實例講述了Python隊列的定義與使用方法。分享給大家供大家參考,具體如下:

雖然Python有自己的隊列模塊,我們只需要在使用時引入該模塊就行,但是為了更好的理解隊列,自己將隊列實現(xiàn)了一下。

隊列是一種數(shù)據(jù)結(jié)構(gòu),它的特點是先進(jìn)先出,也就是說隊尾添加一個元素,隊頭移除一個元素,類似于商場排隊結(jié)賬,先來的人先接賬,后來的排在隊尾。在我們?nèi)粘I钪?,發(fā)送短信就會用到隊列。下面是Python實現(xiàn)隊列的代碼:

#!/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)
 #獲取隊列的當(dāng)前長度
 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()

測試結(jié)果:

更多關(guān)于Python相關(guān)內(nèi)容可查看本站專題:《Python數(shù)據(jù)結(jié)構(gòu)與算法教程》、《Python函數(shù)使用技巧總結(jié)》、《Python字符串操作技巧匯總》、《Python入門與進(jìn)階經(jīng)典教程》及《Python文件與目錄操作技巧匯總

希望本文所述對大家Python程序設(shè)計有所幫助。

相關(guān)文章

  • win10 64bit下python NLTK安裝教程

    win10 64bit下python NLTK安裝教程

    這篇文章主要為大家詳細(xì)介紹了win10 64bit下python NLTK安裝教程,具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2018-09-09
  • Python基于sklearn庫的分類算法簡單應(yīng)用示例

    Python基于sklearn庫的分類算法簡單應(yīng)用示例

    這篇文章主要介紹了Python基于sklearn庫的分類算法,結(jié)合簡單實例形式分析了Python使用sklearn庫封裝樸素貝葉斯、K近鄰、邏輯回歸、SVM向量機等常見機器學(xué)習(xí)算法的分類調(diào)用相關(guān)操作技巧,需要的朋友可以參考下
    2018-07-07
  • python進(jìn)階教程之文本文件的讀取和寫入

    python進(jìn)階教程之文本文件的讀取和寫入

    這篇文章主要介紹了python進(jìn)階教程之文本文件的讀取和寫入,本文講解的是最基本的文件讀取和寫入功能,需要的朋友可以參考下
    2014-08-08
  • python繪制直方圖的方法

    python繪制直方圖的方法

    這篇文章主要為大家詳細(xì)介紹了python繪制直方圖的方法,文中示例代碼介紹的非常詳細(xì),具有一定的參考價值,感興趣的小伙伴們可以參考一下
    2022-08-08
  • python遍歷字符串中每一個字符的4種方式

    python遍歷字符串中每一個字符的4種方式

    很多計算過程都需要每次從一個字符串中取一個字符,下面這篇文章主要給大家介紹了關(guān)于python遍歷字符串中每一個字符的4種方式,文中通過實例代碼介紹的非常詳細(xì),需要的朋友可以參考下
    2023-05-05
  • Django-xadmin+rule對象級權(quán)限的實現(xiàn)方式

    Django-xadmin+rule對象級權(quán)限的實現(xiàn)方式

    今天小編就為大家分享一篇Django-xadmin+rule對象級權(quán)限的實現(xiàn)方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-03-03
  • python進(jìn)程池實現(xiàn)的多進(jìn)程文件夾copy器完整示例

    python進(jìn)程池實現(xiàn)的多進(jìn)程文件夾copy器完整示例

    這篇文章主要介紹了python進(jìn)程池實現(xiàn)的多進(jìn)程文件夾copy器,結(jié)合完整實例形式分析了Python基于多進(jìn)程與進(jìn)程池的文件操作相關(guān)實現(xiàn)技巧,需要的朋友可以參考下
    2019-11-11
  • Python參數(shù)類型以及常見的坑詳解

    Python參數(shù)類型以及常見的坑詳解

    這篇文章主要介紹了Python參數(shù)類型以及常見的坑詳解,由于之前遇到過幾次有關(guān)于參數(shù)類型的坑,以及經(jīng)常容易把一些參數(shù)類型搞混淆,現(xiàn)在做一下有關(guān)參數(shù)類型的總結(jié)記錄以及對之前踩坑經(jīng)歷的分析,需要的朋友可以參考下
    2019-07-07
  • Python使用enumerate獲取迭代元素下標(biāo)

    Python使用enumerate獲取迭代元素下標(biāo)

    這篇文章主要介紹了python使用enumerate獲取迭代元素下標(biāo),文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-02-02
  • 介紹Python中的文檔測試模塊

    介紹Python中的文檔測試模塊

    這篇文章主要介紹了Python中的文檔測試模塊,代碼基于Python2.x版本,需要的朋友可以參考下
    2015-04-04

最新評論