最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

Python 數(shù)據(jù)結(jié)構(gòu)之隊列的實現(xiàn)

 更新時間:2017年01月22日 14:47:43   投稿:lqh  
這篇文章主要介紹了Python 數(shù)據(jù)結(jié)構(gòu)之隊列的實現(xiàn)的相關(guān)資料,需要的朋友可以參考下

Python 隊列

Queue 隊列是一種先進先出(FIFO)的數(shù)據(jù)類型, 新的元素通過 入隊 的方式添加進 Queue 的末尾, 出隊 就是從 Queue 的頭部刪除元素.

用列表來做 Queue:

queue = []         # 初始化一個列表數(shù)據(jù)類型對象, 作為一個隊列

def enQ():       # 定義一個入棧方法
  queue.append(raw_input('Enter New String: ').strip())   
  # 提示輸入一個入隊的 String 對象, 調(diào)用 Str.strip() 保證輸入的 String 值不包含多余的空格

def deQ():        # 定義一個出隊方法
  if len(queue) == 0:
    print "Cannot pop from an empty queue!"
  else:
    print 'Remove [', `queue.pop(0)`, ']'
    # 使用反單引號(` `)來代替 repr(), 把 String 的值用引號擴起來, 而不僅顯示 String 的值
    # queue.pop(0) 總是將在隊列中最前面的元素彈出

def viewQ():      # 定義一個顯示隊列中的內(nèi)容的方法
    print queue

CMDs = {'u':enQ, 'o':deQ, 'v':viewQ}
# 定義一個 Dict 類型對象, 將字符映射到相應(yīng)的 function .可以通過輸入字符來執(zhí)行相應(yīng)的操作

def showmenu():      # 定義一個操作菜單提示方法
  pr = """
  (E)nqueue
  (D)equeue
  (V)iew
  (Q)uit

  Enter choice: """

  while True:
    while True:
      try:
        choice = raw_input(pr).strip()[0].lower()
        # Str.strip() 去除 String 對象前后的多余空格
        # Str.lower() 將多有輸入轉(zhuǎn)化為小寫, 便于后期的統(tǒng)一判斷
        # 輸入 ^D(EOF, 產(chǎn)生一個 EOFError 異常)
        # 輸入 ^C(中斷退出, 產(chǎn)生一個 keyboardInterrupt 異常)

      except (EOFError, KeyboardInterrupt, IndexError):
        choice = 'q'

      print '\nYou picked: [%s]' % choice

      if choice not in 'uovq':
        print 'Invalid option, try again'
      else:
        break

    if choice == 'q':
      break
    CMDs[choice]()
    # 獲取 Dict 中字符對應(yīng)的 functionName, 實現(xiàn)函數(shù)調(diào)用

if __name__ == '__main__':
  showmenu()

隊列和堆棧的實現(xiàn)方式很相似, 區(qū)別在于隊列總是先彈出第一個元素而堆??偸窍葟棾鲎詈笠粋€元素.

感謝閱讀,希望能幫助到大家,謝謝大家對本站的支持!

相關(guān)文章

  • Opencv圖像處理:如何判斷圖片里某個顏色值占的比例

    Opencv圖像處理:如何判斷圖片里某個顏色值占的比例

    這篇文章主要介紹了Opencv圖像處理:如何判斷圖片里某個顏色值占的比例,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧
    2020-06-06
  • 在Python中使用異步Socket編程性能測試

    在Python中使用異步Socket編程性能測試

    異步網(wǎng)絡(luò)據(jù)說能極大的提高網(wǎng)絡(luò)server的連接速度,所以打算寫一個專題,來學(xué)習(xí)和了解異步網(wǎng)絡(luò).因為Python有個非常出名的異步Lib:Twisted,所以就用Python來完成.
    2014-06-06
  • Python實現(xiàn)發(fā)送警告通知到企業(yè)微信方法詳解

    Python實現(xiàn)發(fā)送警告通知到企業(yè)微信方法詳解

    常見的報警方式有:郵件,電話,短信,微信。本文將介紹如何利用Python發(fā)送警告通知到企業(yè)微信,文中的示例代碼有一定的參考價值,感興趣的可以了解一下
    2022-01-01
  • 利用Python制作一個愚人節(jié)整蠱消息框

    利用Python制作一個愚人節(jié)整蠱消息框

    又到了一年一度的愚人節(jié)了,本文小編為大家準(zhǔn)備了用Python語言制作的愚人節(jié)整蠱消息框,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下
    2023-04-04
  • python原始套接字編程示例分享

    python原始套接字編程示例分享

    在實驗中需要自己構(gòu)造單獨的HTTP數(shù)據(jù)報文,而使用SOCK_STREAM進行發(fā)送數(shù)據(jù)包,需要進行完整的TCP交互。因此想使用原始套接字進行編程,直接構(gòu)造數(shù)據(jù)包,并在IP層進行發(fā)送,即采用SOCK_RAW進行數(shù)據(jù)發(fā)送。使用SOCK_RAW的優(yōu)勢是,可以對數(shù)據(jù)包進行完整的修改,可以處理IP層上的所有數(shù)據(jù)包,對各字段進行修改,而不受UDP和TCP的限制。
    2014-02-02
  • Python內(nèi)建類型dict深入理解源碼學(xué)習(xí)

    Python內(nèi)建類型dict深入理解源碼學(xué)習(xí)

    這篇文章主要為大家介紹了Python內(nèi)建類型dict的深入理解及源碼學(xué)習(xí),有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進步,早日升職加薪
    2023-03-03
  • python使用pyinstaller將代碼打包為exe程序

    python使用pyinstaller將代碼打包為exe程序

    這篇文章主要為大家詳細(xì)介紹了python如何使用pyinstaller將代碼打包為exe程序,文中的示例代碼講解詳細(xì),有需要的小伙伴可以參考一下
    2024-11-11
  • Python中如何用Matplotlib繪制多圖并合并展示

    Python中如何用Matplotlib繪制多圖并合并展示

    這篇文章主要介紹了Python中如何用Matplotlib繪制多圖并合并展示問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教
    2023-08-08
  • Python SQLAlchemy簡介及基本用法

    Python SQLAlchemy簡介及基本用法

    SQLAlchemy是一個基于Python實現(xiàn)的ORM對象關(guān)系映射框架,該框架建立在DB API之上,使用關(guān)系對象映射進行數(shù)據(jù)庫操作,這篇文章主要介紹了SQLAlchemy簡介以及基本使用,需要的朋友可以參考下
    2023-08-08
  • django中send_mail功能實現(xiàn)詳解

    django中send_mail功能實現(xiàn)詳解

    這篇文章主要給大家介紹了關(guān)于django中send_mail功能實現(xiàn)的相關(guān)資料,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧。
    2018-02-02

最新評論

桐乡市| 荆州市| 扶绥县| 郧西县| 子长县| 庄浪县| 萨迦县| 湟中县| 莆田市| 西华县| 鹤壁市| 冷水江市| 通海县| 玉门市| 乌鲁木齐县| 睢宁县| 安达市| 承德县| 新竹县| 炉霍县| 宿松县| 庆城县| 诸暨市| 铜川市| 文成县| 九龙县| 杭锦后旗| 报价| 黎平县| 深泽县| 高要市| 孟连| 佛坪县| 镇赉县| 武城县| 涿鹿县| 上栗县| 剑阁县| 宜川县| 博湖县| 南涧|