Нахождение максимальной частоты символа, используемого в данной строке - PullRequest
0 голосов
/ 14 марта 2020

В следующем фрагменте кода я пытаюсь найти наиболее используемый символ в данном предложении. Я использовал распаковку списков, и я видел разные способы решения этой проблемы. Мой вопрос, это хороший способ сделать это? или это слишком сложно и не чисто?

Вход

sentence = "This is a common interview question"
characters = list(
    {
        (char, sentence.count(char))
        for char in sentence if char != ' '
    }
)

characters.sort(
    key=lambda char: char[1],
    reverse=True
)

print(f"'{characters[0][0]}' is repeated {characters[0][1]} times")

Выход

'i' is repeated 5 times

1 Ответ

0 голосов
/ 14 марта 2020

Вы можете использовать collections пакет:

import collections
s = "This is a common interview question"
print(collections.Counter(s).most_common(1)[0])
...