我写了一个函数来计算一个单个字母的出现给定的字符串:返回多少次出现在每个字母在字符串
def count_letters(string, letter):
'''returns the number of letters letter in a sentence string.'''
count = 0
for char in string:
if char == letter:
count += 1
return count
现在,我想找到一种方法,返回以列表格式显示所有字母出现的次数(假设它们都是小写字母 - 我正在使用string.lower()
)。我初始化的信计数器26 0的列表:
letter_counter = [0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0]
但我不知道如何遍历一个给定的字符串和追加列表为每个字母。
Ex。如果,letter_counter
回报:
letter_counter = [0,0,0,0,1,0,0,1,0,0,0,2,0,0,1,0,0,0,0,0,0,0,0,0,0,0]
我认为这只是一个为内循环for循环的问题,但似乎更加复杂。或者我可能只是看了太久。
在此先感谢。
使用'collections.Counter'是序列中出现次数最常用的方法。你也可以在'letter_counter'上做一个for循环,确保将每个索引转换成带有'chr(ord('A'+ i))'的字符。 –