Нет необходимости перебирать диктовку, вы можете просто проверить, существует ли ключ char
:
dic = {}
for char in text:
if char in dic:
dic[char] += 1
else:
dic[char] = 1
print(dic)
# Out: {'t': 2, 'e': 1, 's': 1, ' ': 1, '1': 1, '2': 1, '3': 1, '4': 1, '!': 1}
Помимо написания этого самостоятельно, вы также можете использовать реализованные модули для таких вещей, как это. Одним из вариантов будет Counter
из collections
модуля, который также вернет dict
:
from collections import Counter
counts = Counter(text)
print(counts)
# Out: Counter({'t': 2,
# 'e': 1,
# 's': 1,
# ' ': 1,
# '1': 1,
# '2': 1,
# '3': 1,
# '4': 1,
# '!': 1})