zoukankan      html  css  js  c++  java
  • Python 队列 queue

    队列

    • 队列:先进先出
    import queue
    q = queue.Queue()# 可以输入int参数指定队列大小
    q.put(1)# 进队列
    q.put(2)
    q.put(3)
    # print(q.put_nowait()) # 不检测队列是否已满,满则报错
    print("qsize:{}".format(q.qsize()))# 取队列当前队列长度
    print(q.get())# 出队列
    print(q.get())
    print(q.get())
    print("qsize:{}".format(q.qsize()))
    #print(q.get())# 没有下一个值得时候阻塞
    # print(q.get_nowait())# 不检测队列是否为空,为空则报错
    
    

    结果

    qsize:3
    1
    2
    3
    qsize:0
    

    • 先进后出
    import queue
    q = queue.LifoQueue()# 栈
    q.put(1)
    q.put(2)
    q.put(3)
    print(q.get())
    print(q.get())
    print(q.get())
    

    结果

    3
    2
    1
    

    优先级队列

    • 根据指定的优先级来输出
    • 优先级别数字越小优先级别越高,可以为负
    import queue
    q = queue.PriorityQueue()# 优先级队列
    q.put((10,1))# 参数为元组类型,元组中的第一个值为优先级别
    q.put((5,2))
    q.put((15,3))
    print(q.get())
    print(q.get())
    print(q.get())
    

    结果

    (5, 2)
    (10, 1)
    (15, 3)
    
  • 相关阅读:
    【笔记】Maven使用入门
    【笔记】c++文件
    【笔记】IntelliJ IDEA配置Hibernate
    【HTML5校企公益课】第四天
    【c++习题】【17/4/16】动态分配内存
    C#
    C#
    C#
    C#
    C#
  • 原文地址:https://www.cnblogs.com/changjiangwei/p/11869034.html
Copyright © 2011-2022 走看看