好湿?好紧?好多水好爽自慰,久久久噜久噜久久综合,成人做爰A片免费看黄冈,机机对机机30分钟无遮挡

主頁 > 知識庫 > Python數據結構之優先級隊列queue用法詳解

Python數據結構之優先級隊列queue用法詳解

熱門標簽:手機網頁嵌入地圖標注位置 電銷機器人的風險 地圖標注線上如何操作 應電話機器人打電話違法嗎 天津電話機器人公司 開封自動外呼系統怎么收費 河北防封卡電銷卡 開封語音外呼系統代理商 400電話辦理哪種

一、基本用法

Queue類實現了一個基本的先進先出容器。使用put()將元素增加到這個序列的一端,使用get()從另一端刪除。具體代碼如下所示:

import queue

q = queue.Queue()

for i in range(1, 10):
    q.put(i)
while not q.empty():
    print(q.get(), end="  ")

運行之后,效果如下:

這里我們依次添加1到10到隊列中,因為先進先出,所以出來的順序也與添加的順序相同。

二、LIFO隊列

既然有先進先出隊列queue,那么數據結構中肯定也有后進先出的隊列。后進先出的隊列為:LifoQueue,示例如下:

import queue

q = queue.LifoQueue()

for i in range(1, 10):
    q.put(i)
while not q.empty():
    print(q.get(), end="  ")

運行之后,效果如下:

三、優先隊列

在操作系統中,我們常常會根據優先級來處理任務,比如系統的優先級最高,我們肯定優先處理系統任務,然后才處理用戶的任務。同樣,queue庫給我們提供了PriorityQueue來處理優先級的隊列。

示例如下:

import queue
import threading


class Job:
    def __init__(self, priority, desc):
        self.priority = priority
        self.desc = desc
        print("New Job:", desc)
        return

    def __eq__(self, other):
        try:
            return self.priority == other.priority
        except AttributeError:
            return NotImplemented

    def __lt__(self, other):
        try:
            return self.priority > other.priority
        except AttributeError:
            return NotImplemented


def process_Job(q):
    while True:
        next_job = q.get()
        print(next_job.desc)
        q.task_done()


q = queue.PriorityQueue()

q.put(Job(5, "Five Job"))
q.put(Job(15, "Fifteen Job"))
q.put(Job(1, "One Job"))

workers = [
    threading.Thread(target=process_Job, args=(q,)),
    threading.Thread(target=process_Job, args=(q,)),
]

for work in workers:
    work.setDaemon(True)
    work.start()

q.join()

運行之后,效果如下:

這里,我們默認數值越大優先級越高,可以看到15先執行,然后再是5,1任務。這個例子展現了有多個線程在處理任務時,要根據get()時隊列中元素的優先級來處理。

到此這篇關于Python數據結構之優先級隊列queue用法詳解的文章就介紹到這了,更多相關Python隊列queue 內容請搜索腳本之家以前的文章或繼續瀏覽下面的相關文章希望大家以后多多支持腳本之家!

您可能感興趣的文章:
  • Python 數據結構之樹的概念詳解
  • python三種數據結構及13種創建方法總結
  • python數據結構的排序算法
  • Python內置數據結構列表與元組示例詳解
  • Python二進制數據結構Struct的具體使用
  • python用sqlacodegen根據已有數據庫(表)結構生成對應SQLAlchemy模型
  • Python數據結構之圖的存儲結構詳解
  • Python數據結構之二叉排序樹的定義、查找、插入、構造、刪除
  • 詳解python數據結構之棧stack
  • Python數據結構詳細

標簽:常州 江蘇 六盤水 成都 駐馬店 山東 宿遷 蘭州

巨人網絡通訊聲明:本文標題《Python數據結構之優先級隊列queue用法詳解》,本文關鍵詞  Python,數據結構,之,優先級,;如發現本文內容存在版權問題,煩請提供相關信息告之我們,我們將及時溝通與處理。本站內容系統采集于網絡,涉及言論、版權與本站無關。
  • 相關文章
  • 下面列出與本文章《Python數據結構之優先級隊列queue用法詳解》相關的同類信息!
  • 本頁收集關于Python數據結構之優先級隊列queue用法詳解的相關信息資訊供網民參考!
  • 推薦文章
    主站蜘蛛池模板: 乐乐亚洲精品综合影院| 韩国理伦电影在线观看| 白丝jk美女被视频网站| 高h吃奶乳| 66xx免费观看| 成+人+黄+色+网站+69欧美| 思思99热久久精品2019线6| 国产精品日韩精品| AV 丝袜 欧美 老 另类 亚洲| 国产偷抇久久精品A片69探花| BigAss?欧美大屁股| 年轻的小子三级| 国产午夜视频在线观看第四页| 爽?好多水?快?呻吟视频| 日韩成人紧身丝袜| 国产精品理论片| 被媚药啪到高潮的A片| 韩国美女啪啪十九禁无遮挡| 涩综合| 97亚洲熟妇自偷自拍另类图片 | 温柔的岳半推半就的从了我| 成人一区专区在线观看| 无码视频国产va在线播放| 《性/生活》2韩国电影| 受从小被男主肉到大H| 男人猛戳进女人免费视频| 给我播放亚洲电影| 国产69???高潮A片| 人乳videos巨大吃奶护士| 免费婬乱A片欧美大片宝臀| 老师帮我用丝袜脚帮我飞机| 好爽快点| 国产乱婬精品一区二区三区毛片| 巨胸喷奶水视频www| 亚洲色综合色少妇久久草草| 女的被?到爽免费羞羞视频| 男男激烈肉交小说| 91肥熟国产老肥熟女| pans福利一区二区三区在线观看| 影院成人区精品一区二区婷婷丽春院影视 | 性欧美视频|