python3 OrderedDict类(有序字典)使用方法

高洛峰
高洛峰 原创
2017-03-23 14:56:23 8675浏览

创建有序字典

import collections
dic = collections.OrderedDict()
dic['k1'] = 'v1'dic['k2'] = 'v2'dic['k3'] = 'v3'print(dic)#输出:OrderedDict([('k1', 'v1'), ('k2', 'v2'), ('k3', 'v3')])

clear(清空有序字典)

import collections
dic = collections.OrderedDict()
dic['k1'] = 'v1'dic['k2'] = 'v2'dic.clear()print(dic)#输出:OrderedDict()

copy(拷贝)

import collections
dic = collections.OrderedDict()
dic['k1'] = 'v1'dic['k2'] = 'v2'new_dic = dic.copy()print(new_dic)#输出:OrderedDict([('k1', 'v1'), ('k2', 'v2')])

fromkeys(指定一个列表,把列表中的值作为字典的key,生成一个字典)

import collections
dic = collections.OrderedDict()
name = ['tom','lucy','sam']print(dic.fromkeys(name))print(dic.fromkeys(name,20))#输出:OrderedDict([('tom', None), ('lucy', None), ('sam', None)])#     OrderedDict([('tom', 20), ('lucy', 20), ('sam', 20)])

items(返回由“键值对组成元素“的列表)

import collections
dic = collections.OrderedDict()
dic['k1'] = 'v1'dic['k2'] = 'v2'print(dic.items())#输出:odict_items([('k1', 'v1'), ('k2', 'v2')])

keys(获取字典所有的key)

import collections
dic = collections.OrderedDict()
dic['k1'] = 'v1'dic['k2'] = 'v2'print(dic.keys())# 输出:odict_keys(['k1', 'k2'])

move_to_end(指定一个key,把对应的key-value移到最后)

import collections
dic = collections.OrderedDict()
dic['k1'] = 'v1'dic['k2'] = 'v2'dic['k3'] = 'v3'dic.move_to_end('k1')print(dic)# 输出:OrderedDict([('k2', 'v2'), ('k3', 'v3'), ('k1', 'v1')])

pop(获取指定key的value,并在字典中删除)

import collections
dic = collections.OrderedDict()
dic['k1'] = 'v1'dic['k2'] = 'v2'dic['k3'] = 'v3'k = dic.pop('k2')print(k,dic)# 输出:v2 OrderedDict([('k1', 'v1'), ('k3', 'v3')])

popitem(按照后进先出原则,删除最后加入的元素,返回key-value)

import collections
dic = collections.OrderedDict()
dic['k1'] = 'v1'dic['k2'] = 'v2'dic['k3'] = 'v3'print(dic.popitem(),dic)print(dic.popitem(),dic)# 输出:('k3', 'v3') OrderedDict([('k1', 'v1'), ('k2', 'v2')])#      ('k2', 'v2') OrderedDict([('k1', 'v1')])

setdefault(获取指定key的value,如果key不存在,则创建)

import collections
dic = collections.OrderedDict()
dic['k1'] = 'v1'dic['k2'] = 'v2'dic['k3'] = 'v3'val = dic.setdefault('k5')print(val,dic)# 输出:None OrderedDict([('k1', 'v1'), ('k2', 'v2'), ('k3', 'v3'), ('k5', None)])

values(获取字典所有的value,返回一个列表)

import collections
dic = collections.OrderedDict()
dic['k1'] = 'v1'dic['k2'] = 'v2'dic['k3'] = 'v3'print(dic.values())# 输出:odict_values(['v1', 'v2', 'v3'])

以上就是python3 OrderedDict类(有序字典)使用方法的详细内容,更多请关注php中文网其它相关文章!

声明:本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn核实处理。