Самые частые слова в строке

В большой текстовой строке подсчитать количество встречаемых слов и вернуть 10 самых частых. Не учитывать знаки препинания и регистр символов. За основу возьмите любую статью из википедии или из документации к языку.

import string
import itertools

line = "permutations(). Возвращает последовательные r перестановок элементов в итерируемом объекте. \
        Если параметр r не указан или стоит в значении None, то по умолчанию r принимает длину \
        итерируемого объекта и генерирует все возможные полноценные перестановки. Кортежи перестановок \
        выдаются в лексикографическим порядке в соответствии с порядком итерации входных данных. \
        Таким образом, если входные данные итерируемого объекта отсортированы, то комбинация кортежей \
        будет выдаваться в отсортированном порядке. Элементы рассматриваются как уникальные в зависимости \
        от их позиции, а не от их значения. Таким образом, если входные элементы уникальны, то в каждой \
        перестановке не будет повторяющихся значений."

line = ((line.translate(str.maketrans('', '', string.punctuation))).lower()).split()
d = dict()
for word in line:
    if word not in d:
        d[word] = 1
    else:
        d[word] = d[word] + 1
   
d = ({k: v for k, v in sorted(d.items(), key=lambda item: item[1], reverse = True)})
d = dict(itertools.islice(d.items(),10))
print(d)


Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: