collections.defaultdict()的使用以及Counter deque 拓展

语法格式

collections.defaultdict([default_factory[, …]])

返回对象

该函数返回一个类似字典的对象。defaultdict是Python内建字典类(dict)的一个子类,它重写了方法_missing_(key),增加了一个可写的实例变量default_factory,实例变量default_factory被missing()方法使用,如果该变量存在,则用以初始化构造器,如果没有,则为None。

'''
    默认字典,是字典的一个子类,继承有字典的方法和属性,
    默认字典在进行定义初始化的时候可以指定字典值得默认类型: 
'''
from collections import defaultdict
dic = defaultdict(dict)
dic['k1'].update({'k2':'aaa'})
print(dic)

拓展部分

# 语法格式
# collections.defaultdict([default_factory[, …]])
# 返回对象
# 该函数返回一个类似字典的对象。
# defaultdict是Python内建字典类(dict)的一个子类,
'''
它重写了方法_missing_(key),增加了一个可写的实例变量default_factory,
实例变量default_factory被missing()方法使用,如果该变量存在,
则用以初始化构造器,如果没有,则为None。
'''
'''
    计数器(Counter)
    
    双向队列(deque)
    
    默认字典(defaultdict)
    
    有序字典(OrderedDict)
    
    可命名元组(namedtuple)
'''
from collections import Counter
#1. Counter
'''
    Counter 作为字典(dict)的一个子类用来进行hashtable计数,
    将元素进行数量统计、计数后返回一个字典,键值为元素:值为元素个数
'''
s = 'abcbcaccbbad'
l = ['a','b','c','c','a','b','b']
d = {'2': 3, '3': 2, '17': 2}
# Counter 获取各元素的个数,返回字典
print(Counter(s))  
print(Counter(l))  
print(Counter(d)) 
# Counter({'b': 4, 'c': 4, 'a': 3, 'd': 1})
# Counter({'b': 3, 'a': 2, 'c': 2})
# Counter({'2': 3, '3': 2, '17': 2})


#2.deque
'''
    deque 包含在文件_collections.py中,属于高性能的数据结构
    (High performance data structures)之一.可以从两端添加和删除元素,
    常用的结构是它的简化版。
'''
str1 = 'abc123cd'
dq = deque(str1)
print(dq)        # deque(['a', 'b', 'c', '1', '2', '3', 'c', 'd'])





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Tomorrowave

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值