Справочник · модуль 17 «Финал»

Частоты

Частоты — словарь, в котором для каждого значения считают, сколько раз оно встретилось. Так сравнивают слова из одних и тех же букв.

Сравнение из жизни

Как подсчёт голосов: за кого сколько.

Пример

def is_anagram(a, b):
    counts = {}
    for letter in a:
        counts[letter] = counts.get(letter, 0) + 1
    for letter in b:
        counts[letter] = counts.get(letter, 0) - 1
    for value in counts.values():
        if value != 0:
            return False
    return True


print(is_anagram("лист", "слит"))
print(is_anagram("кот", "кит"))
Результат
True
False

Учитель в уроке Второй приём: частоты. Словарь считает, сколько раз встретилась каждая буква. Буквы первого слова прибавляем, буквы второго убираем. Если у каждой буквы вышел ноль, слова составлены из одних и тех же букв. Такие слова называют анаграммами.

Запомнить

Частоты — как разложить буквы по кучкам и посчитать каждую. Кучки совпали — слова из одних букв.

Тема из урока 17.3 «Задачи с собеседований» курса PythonAZ.

В этом же уроке