Я хочу написать код, который будет принимать ввод букв и возвращать вывод о том, сколько раз эти буквы появлялись в переменной. Вот что у меня есть:
#Letter Count
def letter_count(letters):
number_counts = {'a':'1','b':'2','c':'3','d':'4','e':'5','f':'6','g':'7','h':'8','i':'9','j':'10','k':'11','l':'12','m':'13','n':'14','o':'15','p':'16','q':'17','r':'18','s':'19','t':'20','u':'21','v':'22','w':'23','x':'24','y':'25','z':'26'}
str_int = str(letters)
int_name = ''
for char in str_int:
int_name = int_name + number_counts[char] + ' '
return int_name.strip()
Вместо того, чтобы возвращать что-то вроде a: 1 или u: 0, он вернет 1 или 21. Вот несколько тестовых примеров того, что он должен делать и что он делает сейчас.
#What it should do
letter_count(arthur)
{'a': 3, 'b': 2, 'c': 0, 'd': 3, 'e': 5, 'f': 2, 'g': 4, 'h': 0, 'i': 7, 'j': 0, 'k': 0, 'l': 1, 'm': 3, 'n': 9, 'o': 7, 'p': 1, 'q': 0, 'r': 5, 's': 10, 't': 5, 'u': 1, 'v': 1, 'w': 2, 'x': 0, 'y': 2, 'z': 0}
letter_count('')
{'a': 0, 'b': 0, 'c': 0, 'd': 0, 'e': 0, 'f': 0, 'g': 0, 'h': 0, 'i': 0, 'j': 0, 'k': 0, 'l': 0, 'm': 0, 'n': 0, 'o': 0, 'p': 0, 'q': 0, 'r': 0, 's': 0, 't': 0, 'u': 0, 'v': 0, 'w': 0, 'x': 0, 'y': 0, 'z': 0}
#what it does now
letter_count(abc)
1 2 3
letter_count(hi)
8 9
Как мне это исправить?