python-有序字典、默认字典、双向队列、队列

#有序字典
import collections
od = collections.OrderedDict()
od['k1'] = 'v1'
od['k2'] = 'v2'
od['k3'] = 'v3'
print(od.items())
#   odict_items([('k1', 'v1'), ('k2', 'v2'), ('k3', 'v3')])
od.move_to_end('k2')
print(od.items())
#   odict_items([('k1', 'v1'), ('k3', 'v3'), ('k2', 'v2')])     将序列移至尾部

od.update({'k1':'vn1','k4':'vn4'})
print(od.items())
#   odict_items([('k1', 'vn1'), ('k3', 'v3'), ('k2', 'v2'), ('k4', 'vn4')])

ret = od.popitem()
print(od.items(),'//',ret)
#   odict_items([('k1', 'vn1'), ('k3', 'v3'), ('k2', 'v2')]) // ('k4', 'vn4')
ret = od.pop('k1')
print(od.items(),'//',ret)
#   odict_items([('k3', 'v3'), ('k2', 'v2')]) // vn1

#默认字典
dd = collections.defaultdict(list)
#   即字典默认数据类型为列表
dd['k1'].append('CHEN')
print(dd)
#   defaultdict(<class 'list'>, {'k1': ['CHEN']})

MyTupleClass = collections.namedtuple('MyTupleClass',['x','y','z'])
#创建类
obj = MyTupleClass(11,12,13)
print(obj.x,obj.y,obj.z)
#   11 12 13

dq = collections.deque()
#   双向队列
dq.append(1)
dq.append(2)
dq.append(3)
print(dq)
#   deque([1, 2, 3])
dq.appendleft(4)
dq.appendleft(4)
print(dq,dq.count(4))
#   deque([4, 4, 1, 2, 3]) 2    统计元素出现次数
dq.extend([11,12,13])
print(dq)
#   deque([4, 4, 1, 2, 3, 11, 12, 13])
print(dq.index(11))
#   5           取索引
dq.rotate(3)
print(dq)
#   deque([11, 12, 13, 4, 4, 1, 2, 3])  rotate向右循环移动3位

#单向队列

import queue
q = queue.Queue()
q.put(6)
print(q.qsize(),q.get())
#   1 6     queue的put 和get 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值