Python collections系列之双向队列】的更多相关文章

双向队列(deque) 一个线程安全的双向队列 1.创建一个双向队列 import collections d = collections.deque() d.append(') d.appendleft(') d.appendleft('a') d.appendleft(') 2.查看双向队列 print(d) 输出结果: deque([']) 3.查看双向队列的方法 >>> dir(d) ['__class__', '__copy__', '__delattr__', '__deli…
单向队列(deque) 单项队列(先进先出 FIFO ) 1.创建单向队列 import queue q = queue.Queue() q.put(') q.put('evescn') 2.查看单向队列 # 单向队列是先进先出,要查看单向队列,需使用get获取单向队列的值 print(q.get()) print(q.get()) 输出结果: 123 evescn 3.单向队列和双向队列的区别 # 双向队列: 调用:import collections collections.deque()…
有序字典(orderedDict ) orderdDict是对字典类型的补充,他记住了字典元素添加的顺序 1.创建一个有序字典 import collections dic = collections.OrderedDict() dic['k1'] = 'v1' dic['k2'] = 'v2' dic['k3'] = 'v3' 2.查看有序字典 print(dic) 输出结果: OrderedDict([('k1', 'v1'), ('k2', 'v2'), ('k3', 'v3')]) 3.…
可命名元组(namedtuple)  根据nametuple可以创建一个包含tuple所有功能以及其他功能的类 1.创建一个坐标类 import collections # 创建类, defaultdict,坐标中会使用 MytupleClass = collections.namedtuple('MytupleClass',['x', 'y', 'z']) obj = MytupleClass(11, 22, 33) 2.查询类中的x,y,z坐标 # 默认情况下元组只能使用索引进行访问,通过创…
默认字典(defaultdict)  defaultdict是对字典的类型的补充,它默认给字典的值设置了一个类型. 1.创建默认字典 import collections dic = collections.defaultdict(list) # 设置dic的值类型为list dic['k1'].append('evescn') 2.查看默认字典 print(dic) 输出结果: defaultdict(<class 'list'>, {'k1': ['evescn']}) 3.查看默认字典的…
计数器(counter) Counter是对字典(无序)类型的补充,用于追踪值的出现次数. 使用counter需要导入 collections 类 ps:具备字典的所有功能 + 自己的功能 1.创建一个计数器 >>> import collections >>> obj = collections.Counter('aaabbccsdfsdfdfsdfsdf') 2.查看计数器变量 >>> print(obj) Counter({'d': 5, 'f'…
介绍 大家都知道利用 .append 和 .pop 方法,我们可以把列表当作栈或者队列来用(比如,把 append 和 pop(0) 合起来用,就能模拟栈的“先进先出”的特点).但是删除列表的第一个元素(抑或是在第一个元素之前添加一个 元素)之类的操作是很耗时的,因为这些操作会牵扯到移动列表里的所有元素.这个时候双向队列就又作用了. deque 是什么 collections.deque 类(双向队列)是一个线程安全.可以快速从两端添加或者删除元素的数据类型.而且如果想要有一种数据类型来存 放“…
今天来向大家介绍两个队列,一个是deque,双向队列,另外一个是Queue,单向队列,队列和堆栈不同,队列为先进先出,大家还需要注意一下,双向队列为collections模块中的类,而Queue为queue模块中的类,大家不要被我博客的标题干扰: 下面先来介绍一下双向对象deque 1.创建一个deque[双向队列],同样,我们肯定要先import colles模块 import collections #deque为collections中的双向队列,是先进先出,和堆栈正好相反 obj = c…
collection系列 不常用功能,需要进行模块功能导入: import collection Counter 常用方法测试: #!/usr/local/env python3 ''' Author:@南非波波 Blog:http://www.cnblogs.com/songqingbo/ E-mail:qingbo.song@gmail.com ''' import collections obj = collections.Counter('sjndsjkdsdmslaladsldsldm…
 一.collections系列: collections其实是python的标准库,也就是python的一个内置模块,因此使用之前导入一下collections模块即可,collections在python原有的数据类型str(字符串), int(数值), list(列表) tuple(元组), dict(字典)的基础之上增加一些其他的数据类型即方法,具体如下: 1.Counter(dict):计数器,扩展的字典的方法,对指定数据的字串做统计出现的次数,结果是一个元组,如: import co…