模块之queue的功能介绍

队列的分类:

队列主要要分为两种

1.双向队列
2.单项队列

1. 单项队列

  1. 创建单项队列

    格式:queue.Queue(obj)
    例如:que = queue.Queue('abc')
    返回值:queue.Queue
    #创建单项队列时的参数可以是任意对象,无论传入的参数是什么,该队列始终是空的。
  2. empty(判断队列是否是空的)

    格式:queue.Queue(obj).empty()
    例如:que = queue.Queue('abc')
    print(que.empty())
    >>> True
    返回值:bool
    #通过直接创建的单项队列,永远都是空的。
  3. full(判断队列是否满了)

    格式:queue.Queue(obj).full()
    例如:que = queue.Queue('abc')
    print(que.full())
    >>> False
    返回值:bool
    #判断队列是否满了,与maxsize相对应。
  4. get(获取队列中的一个项)

    格式:queue.Queue(obj).get(block=True,timeout=None)
    例如:que = queue.Queue()
    que.put('abc')
    print(que.get())
    >>> 'abc'
    返回值:obj
    #取出队列中的一个项,由于单项队列只能先进先出,当队列中的项不止一个时,则直接获取第一个被放入队列中的项。
  5. get_nowait(获取队列的一个项)

    格式:queue.Queue(obj).get_nowait()
    #方法同上
  6. join

  7. put(上传一个项)

    格式:queue.Queue(obj).put(item,block=True,timeout=None)
    例如:que = queue.Queue()
    print(que.put('abc'))
    >>> None
    返回值:None
    #向队列里面放一个项,一次只能放一个项。
  8. put_nowait(上传一个项)

    格式:queue.Queue(obj).put_nowait()
    #方法同上
  9. qsize(队列长度)

    格式:queue.Queue(obj).qsize()
    例如:que = queue.Queue()
    print(que.qsize())
    >>> 0
    返回值:int
    #返回队列的长度
  10. task_done

2. 双向队列

创建方法:

格式:queue.deque(iterable[,maxlen])
返回值:collections.deque

注:queue模块中的queue.deque与collections模块中的collections.deque的功能是一样的,因此这里不作详细介绍。

Python中模块之queue的功能介绍的更多相关文章

  1. Python中模块之os的功能介绍

    Python中模块之os的功能介绍 1. os的变量 path 模块路径 方法:os.path 返回值:module 例如:print(os.path) >>> <module ...

  2. Python中模块之copy的功能介绍

    模块之copy的功能介绍 copy主要分两种: 1.浅拷贝 2.深拷贝 赋值: 在python中赋值算特殊的拷贝,其实赋值可以理解为同一个对象有两个名字,所以当其中一个发生变化,另一个也跟着会变化. ...

  3. Python中模块之sys的功能介绍

    sys模块的功能介绍 1. sys的变量 argv 命令行参数 方法:sys.argv 返回值:list 例如:test1.py文件中有两句语句1.import sys 2.print(sys.arg ...

  4. Python中模块之re的功能介绍

    re模块的功能介绍 1. 方法 match 从开头开始查找 方法:re.match(pattern,string,flags=0) 返回值:<class '_sre.SRE_Match'> ...

  5. Python中模块之random的功能介绍

    random的功能介绍 random模块的方法如下: betavariate 获取一个range(0,1)之前的随机浮点数 方法:random.betavariate(alpha,beta) 返回值: ...

  6. Python中生成器和迭代器的功能介绍

    生成器和迭代器的功能介绍 1. 生成器(generator) 1. 赋值生成器 1. 创建 方法:x = (variable for variable in iterable) 例如:x = (i f ...

  7. Python中def及lambda的功能介绍

    函数def及lambda的功能介绍 1. def函数的功能介绍 1. 函数的参数 无参数函数 格式:def func_name(): '''__doc__'''#函数的说明文档(内容) express ...

  8. 查看python中模块的所有方法

    查看python中模块的所有方法     安装的python模块,现将查看方法总结如下 一.CMD命令行下使用pydoc命令 在命令行下运行$ pydoc modules即可查看 二.在python交 ...

  9. [python]关于在python中模块导入问题追加总结

    [背景] 最近在写程序时,我使用的eclipse编辑器运行都没有问题,然后部署到自动化环境上却偏偏报找不到相应模块问题,现在对该问题在之前的贴子上追加总结 原帖子:[python]关于python中模 ...

随机推荐

  1. 第一章 IDEA的使用

    第一章   IDEA的使用 1.为什么要使用idea 最智能的IDE IDEA相对于eclipse来说最大的优点就是它比eclipse聪明.聪明到什么程度呢?我们先来看几个简单的例子. A.智能提示重 ...

  2. Andrew Ng机器学习第一章——初识机器学习

    机器学习的定义 计算机程序从经验E中学习,解决某一任务T.进行某一性能度量P,通过P测定在T上的表现因E而提高. 简而言之:程序通过多次执行之后获得学习经验,利用这些经验可以使得程序的输出结果更为理想 ...

  3. Netty事件监听和处理(下)

    上一篇 介绍了事件监听.责任链模型.socket接口和IO模型.线程模型等基本概念,以及Netty的整体结构,这篇就来说下Netty三大核心模块之一:事件监听和处理. 前面提到,Netty是一个NIO ...

  4. 关于tomcat和jetty的乱码问题

    现象:windows 下的tomcat和jetty默认安装都有问题,linux下的没有问题. 分析:操作系统字符集发生作用了,程序有些处理可能使用了该默认字符集,导致两边现象不一致,建议排查,先尝试通 ...

  5. Docker学习笔记 - Docker的基本概念

    一.cs架构 Docker客户端:本地或远程 Docker服务端:守护进程Docker Daemon 二.基本概念 Docker镜像:打包阶段,层叠的只读文件系统,引导->root(ubuntu ...

  6. C++中const对象和非const对象调用成员函数问题

    一.类MyClass 二.主函数调用 三.结果

  7. Linux下安装jmeter

    一.用Xftp上传apache-jmeter-2.13.tgz到Linux系统里 二.解压apache-jmeter-2.13.tgz,tar xzfv apache-jmeter-2.13.tgz ...

  8. 分享java常用技术教程:dubbo、zookeeper、ActiveMq、多线程、Redis、PowerDesigner等

    游戏是自己整理的邮箱来源于网上,下面是我的有道云的分享地址: https://note.youdao.com/share/?id=c5f258fa9efd1b28b2d8f0d37e59b194&am ...

  9. POJ2318【判断点在直线哪一侧+二分查找区间】

    题目大意:给定一个矩形和一些线段,线段将矩形分割为从左至右的若干部分,之后给出一些玩具的坐标,求每个部分中玩具的数量 #include<cstdio> #include<cstdli ...

  10. html标记语言 --超链接

    html标记语言 --超链接 四.超链接 1. 基本语法 <a href="" target="打开方式" name="页面锚点名称" ...