Sss123057057 发表于 2021-2-11 10:43:01

小白

import pprint
message = 'It was a bright cold day in April,\
and the clocks were striking thirteen.'
count = {}
for character in message:
    count.setdefault(character, 0)
    count = count+1
pprint.pprint(count)
程序为什么可以完成计数功能

逃兵 发表于 2021-2-11 12:09:00

dict.setdefault(key, default=None) 方法可以在字典的键不存在时,生成一个键,值为defalut

创建空字典count

自动count的键(key)为字符串,值(value)为出现的次数

源码中遍历字符串message

当字符不在字典中时,生成一个键,键的值默认为0,值+1.如果存在,则不生成新键,值+1

import pprint
message = 'It was a bright cold day in April,\
and the clocks were striking thirteen.'
count = {} #生成空字典


for character in message: #遍历字符串
    count.setdefault(character, 0) #当字典中没有字符所对应的键时,生成键,默认值为1
    count = count+1 #每当遇到这个字符,这个字符的值会加1
pprint.pprint(count) #打印
页: [1]
查看完整版本: 小白