Python之collections

#collections模块在内置数据类型(dict、list、set、tuple)的基础上,提供了几个额外的数据类型:ChainMap、Counter、deque、defaultdict、namedtuple和OrderedDict等。

ChainMap() ChainMap是python3的新特性,它用来将多个map组成一个新的单元(原来的map结构仍然存在,类似于这些map被存在了一个list之中),这比新建一个map再将其他map用update加进来快得多。通过ChainMap可以来模拟嵌套的情景,而且多用于模板之中

import collections

data = {'username':'lisi123','pwaaword':'root1213',}
data1 = {'hobby':'PC-Game','sport':'sleep'}
chain_map = collections.ChainMap(data,data1)

#maps方法  将ChainMap转为列表,格式([{},{}])
print(chain_map.maps)

#获取ChainMap中的元素,键不存在返回None
print(chain_map.get('sport'))
print(chain_map.get('null'))

# 新增map
user_info = {'username':'哈哈毛毛怪','email':'[email protected]', 'password':'root!23456'}
chain_map = chain_map.new_child(user_info)
print(chain_map.items())

#parents属性 返回除去第一个map后的ChainMap实例
print(chain_map.parents)
print(chain_map.parents.parents)

Counter

猜你喜欢

转载自www.cnblogs.com/tmd201304/p/9820832.html