zoukankan      html  css  js  c++  java
  • python collections deque

    collections是python的高级容器类库,包含了dict、truple之外的常用容器。

    下面介绍常用的deque

    1. deque是双端队列,可以从两端塞元素进去,也可以从两端取元素。

    2. deque是线程安全的,可以用来做多线程的共享资源,我也是因为这个开始接触duque的

    >>> from collections import deque
    >>> a = [1, 2, 3, 4]
    用列表初始化deque
    >>> deq = deque(a)
    >>> deq
    deque([1, 2, 3, 4])
    往deque中迭代入队列表原始
    >>> deq.extend(a)
    >>> deq
    deque([1, 2, 3, 4, 1, 2, 3, 4])
    从右端入队元素
    >>> deq.append(5)
    >>> deq
    deque([1, 2, 3, 4, 1, 2, 3, 4, 5])
    从左端输入元素
    >>> deq.appendleft(6)
    >>> deq
    deque([6, 1, 2, 3, 4, 1, 2, 3, 4, 5])
    从右端出队
    >>> deq.pop()
    5
    从左端出队
    >>> deq.popleft()
    6
    >>> deq
    deque([1, 2, 3, 4, 1, 2, 3, 4])
    从左往右旋转
    >>> deq.rotate(-2)
    >>> deq
    deque([3, 4, 1, 2, 3, 4, 1, 2])
    从右往左旋转
    >>> deq.rotate(2)
    >>> deq
    deque([1, 2, 3, 4, 1, 2, 3, 4])
    从文件输出到deque
    比如,输入文件的倒数3行,得到大小为3的队列
    >>> a = deque(open('test.txt'), 3)
    >>> a
    deque(['5
    ', '6
    ', '7
    '], maxlen=3)
  • 相关阅读:
    Mybatis学习随笔3
    Mybatis学习随笔2
    Mybatis学习随笔
    Java校招面试-什么是线程安全/不安全
    装饰器2
    装饰器
    默认传参的陷阱
    处理日志文件
    第二天
    用户登录
  • 原文地址:https://www.cnblogs.com/chybot/p/4559638.html
Copyright © 2011-2022 走看看