我寫了一個函數來計算一個單個字母的出現給定的字符串:返回多少次出現在每個字母在字符串
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))'的字符。 –