队列的三种形式


queue.Queue() #先入先出
queue.LifoQueue() #后入先出
queue.priorityQueue() #根据优先级进行选取


# 1.
import queue, threading, time

p = queue.Queue() #先入先出

p.put(1)
p.put(2)
p.put(3)

print(p.get(block=False,timeout=1)) #block = False 时,当取不到时不会发生错误, timeout 等待一秒钟内再来取值
print(p.get(block=False,timeout=1))
print(p.get(block=False,timeout=1))

举例:
def p_get():
print(p.get(timeout=1))

def p_put():
time.sleep(0.5)
p.put(4)
p_pt = threading.Thread(target=p_put)
p_pt.start()
p_gt = threading.Thread(target=p_get)
p_gt.start()

这里没有发生报错,因为在0.5秒时,放入一个4, 因此可以取出
# 2.
import queue
p = queue.LifoQueue()  #后入先出

p.put(1)
p.put(2)
p.put(3)

p.get()
p.get()
p.get()

# 3.
q = queue.PriorityQueue()  #根据优先级进行选取
q.put((1, 'alex'))
q.put((10, 'tom'))
q.put((3, 'ronghua'))

print(q.get())
print(q.get())
print(q.get())



优质内容筛选与推荐>>
1、HTTPS与SNI扩展,一个IP绑定多个SSL证书 | VeriSign|SSL证书|数字签名证书|服务器证书|微软代码签名证书|Symantec
2、Android(工具・集成)
3、15-Call to your teacher(有向图的连通判断)
4、redis数据类型-散列类型
5、【转】使用Xcode和Instruments调试解决iOS内存泄露


长按二维码向我转账

受苹果公司新规定影响,微信 iOS 版的赞赏功能被关闭,可通过二维码转账支持公众号。

    阅读
    好看
    已推荐到看一看
    你的朋友可以在“发现”-“看一看”看到你认为好看的文章。
    已取消,“好看”想法已同步删除
    已推荐到看一看 和朋友分享想法
    最多200字,当前共 发送

    已发送

    朋友将在看一看看到

    确定
    分享你的想法...
    取消

    分享想法到看一看

    确定
    最多200字,当前共

    发送中

    网络异常,请稍后重试

    微信扫一扫
    关注该公众号