from collections import defaultdict
#再讲解defaultdict之前,我们先了解一下传统dict完成统计功能
user_dict ={}
users = ['bobby1', 'bobby2', 'bobby3', 'bobby1','bobby2', 'bobby2']
#统计名字出现的次数
for user in users:
if user not in user_dict:
user_dict[user] = 1
else:
user_dict[user] += 1
print(user_dict)
# 那么有没有办法对上面的代码更加的精简化呢?
#第一种
user_dict ={}
users = ['bobby1', 'bobby2', 'bobby3', 'bobby1','bobby2', 'bobby2']
for user in users:
user_dict.setdefault(user, 0)
user_dict[user] += 1
print(user_dict)
# 有没有还要精简的呢?
default_dict=defaultdict(int)
users = ['bobby1', 'bobby2', 'bobby3', 'bobby1','bobby2', 'bobby2']
for user in users:
default_dict[user] += 1
def gen_default():
return {
"name":'',
'nums':0
}
default_dict = defaultdict(gen_default)
print(default_dict['group1'])
《python必学模块-collections》第4章 defaultdict功能详解
最新推荐文章于 2022-07-07 07:00:00 发布