####################################################

collections模块

namedtuple  #可命名元组

       #Point = namedtuple('point',['x','y'])

       #p = point(1,2)

       #print(p.x)  #1

       #print(p.x)  #2

       #print(p)  #point(x=1,y=2)

 

堆栈:先进后出

队列:先进先出  

q = queue.Queue()  #不可迭代

q.put()  #一次只能put一个值

q.get()  #取到底会阻塞

q.qsize()  #为0的时候不取即可

 

deque  #双端队列

deque.append()  #从后面放数据

deque.appendleft()  #从前面放数据

deque.pop()  #从后面取数据

deque.popleft()  #从前面取数据

 

OrderedDict  #有序字典

         od = OrderedDict([('a',1),('b',2),('c',3)])

         print(od['a'])

 

defaultdict  #默认字典(带默认值)默认值必须是可调用的,如果单纯的值需要用lambda:x

        dic = defaultdic(list)

        for value in values:

        if value >66:

          dic['k1'].append(value)

        else:

          dic['k2'].append(value)

Counter  #计数,无序容器类型,以字典的键值对形式存储,只能操作字符串

      c= Counter('abcabcabcabc')

      print(c)  #Counter({'a':4,'b':4,'c':4})

 

################################################################