Как посчитать частоту символов
Подсчёт, сколько раз встретился каждый символ, — короткая, но очень полезная задача: на ней удобно понять словари.
Через словарь
Заводим пустой словарь и идём по строке символ за символом. Метод get(c, 0) возвращает текущее число вхождений (или 0, если символа ещё не было) — и мы прибавляем единицу.
s = 'банан'
count = {}
for c in s:
count[c] = count.get(c, 0) + 1
print(count) # {'б': 1, 'а': 2, 'н': 2}
Готовый способ: Counter
В стандартной библиотеке есть Counter — он делает ровно то же самое одной строкой и сразу умеет показывать самые частые символы методом most_common.
from collections import Counter
s = 'банан'
print(Counter(s))
print(Counter(s).most_common(1)) # [('а', 2)]
Где пригодится
Частота символов — основа для анализа текста, шифров и задачи «самая частая буква». Тот же приём (словарь-счётчик) считает частоту слов, если идти не по символам, а по результату split().
Частые вопросы
Как не считать пробелы? Пропускайте их условием if c != ' ' внутри цикла.
Как игнорировать регистр? Приведите строку к нижнему регистру через lower() перед подсчётом.
Начать игру бесплатно