模块之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. Java面试题合集(二)

    接下来几篇文章准备系统整理一下有关Java的面试题,分为基础篇,javaweb篇,框架篇,数据库篇,多线程篇,并发篇,算法篇等等,陆续更新中.其他方面如前端后端等等的面试题也在整理中,都会有的. 注: ...

  2. Linux--初次体验

    关于Linux已经听闻很久的大名了,但是一直没有机会来使用,这次趁着放假的机会,来体验一把Linux吧. 之前使用visuabox和Ubuntu16,但是虚拟机总是不能连接互联网,在虚拟机上面无法上网 ...

  3. [Oracle]undo表空间使用量为100%

    在Toad中发现undo表空间undotbs1使用量已经达到100%,但是奇怪的是数据库并没有hang住,依然可以正常运转 通过Oracle提供的EM查看undotbs1表空间的使用,也达到了78.8 ...

  4. 老帖收藏,留供参考:SpringMvc2.5+Mybatis3.2.7

    一.项目背景 SpringMvc+Mybatis 数据库连接池是阿里巴巴的druid.日志框架式logback 二.配置文件 1.SpringMvc-servlet.xml <?xml vers ...

  5. linux下安装 配置 redis数据库

    通过终端命令安装(推荐): 1 确保更新源服务器能正常使用 如果没有更换更新源服务器,那么可能一直都下不了软件.欢迎参考我之前的博文来更换成国内的镜像服务器http://www.cnblogs.com ...

  6. DBSCAN

    DBSCAN,英文全写为Density-based spatial clustering of applications with noise ,是在 1996 年由Martin Ester, Han ...

  7. scrapy爬取中关村在线手机频道

    # -*- coding: utf-8 -*- import scrapy from pyquery import PyQuery as pq from zolphone.items import Z ...

  8. CSS3中不常用但很有用的属性-1

    内容来源于W3Cschool和<图解CSS3核心技术与案例实战> 1.:target选择器 URL 带有后面跟有锚名称 #,指向文档内某个具体的元素.这个被链接的元素就是目标元素(targ ...

  9. 复习HTML+CSS(6)

    n  表格和表单的嵌套顺序 n  单行文本域 语法格式:<input type="text" 属性="值"> 常用属性 l  Name:文本框的名字 ...

  10. Django REST framework+Vue 打造生鲜超市(八)

    九.个人中心功能开发 9.1.drf的api文档自动生成和 (1) url #drf文档,title自定义 path('docs',include_docs_urls(title='仙剑奇侠传')), ...