- 此问题在此处已有答案**:
(13个答案)
19小时前关闭。
def character_frequency(string):
for i in string:
count = 0
print(i,":", count, end = ", ")
count += 1
return count
print(character_frequency("dortmund"))
我的目标是打印每个字母,并查看该字母在字符串中出现了多少次。
我试着打印每个字母,然后使用一个名为count的变量迭代每个字母,看看这个字母在字符串中出现了多少次。
1条答案
按热度按时间qlvxas9a1#
您可以使用文档中的
collection.Counter
类:Counter是一个dict子类,用于计算可散列对象。它是一个集合,其中元素存储为字典键,其计数存储为字典值。计数允许为任何整数值,包括零或负计数。Counter类类似于其他语言中的bags或multiset。
元素从可迭代对象计数或从另一个Map(或计数器)初始化:
Counter对象有一个字典接口,只是它们对缺少的项返回零计数,而不是引发KeyError:
将计数设置为零并不会从计数器中删除元素。使用del可将其完全删除:
版本3.1中的新增功能。
版本3.7中的变更:作为一个dict子类,Counter继承了记住插入顺序的功能。Counter对象上的数学运算也保持顺序。结果根据元素在左操作数中首次出现的时间排序,然后根据在右操作数中出现的顺序排序。
然后,您可以打印
Counter
对象,使用pprint
library,或者自己编写一些漂亮的打印代码。