重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
最近在pythonTip做题的时候,遇到了deque模块,以前对其不太了解,现在特此总结一下
创新互联建站专注于宝安企业网站建设,成都响应式网站建设公司,商城网站制作。宝安网站建设公司,为宝安等地区提供建站服务。全流程按需求定制开发,专业设计,全程项目跟踪,创新互联建站专业和态度为您提供的服务deque模块是python标准库collections中的一项,它提供了两端都可以操作的序列,这意味着,在序列的前后你都可以执行添加或删除操作。
deque 是python提供的一个数据结构,线程安全,功能比list强大
代码如下
from collections import deque user_list = ['admin', 'root'] user = user_list.pop() # 弹出list尾部的元素, list没有提供操作头部的方法 print(user, user_list) # root ['admin'] """ deque 是线程安全的 GIL保证 list 非线程安全 """ # def __init__(self, iterable=(), maxlen=None) user_deque = deque(['admin', 'root', 'jet']) # append 添加一个元素到deque的尾部,也即是从右边插入一个元素 user_deque.append('md') # 从头部添加一个元素 user_deque.appendleft('fi') # pop 从尾部弹出一个元素 pop_item = user_deque.pop() print(pop_item) # 从头部弹出一个元素 pop_left_item = user_deque.popleft() # extent 添加一个deque到原deque中去,合并deque. 注意: 并不会返回一个新的deque user_deque.extend(deque(('a1', 'a2'))) # 合并deque到的元素到原deque的左边 user_deque.extendleft(deque([123,456])) # 统计个数 count = user_deque.count(123) print(count) print(user_deque)