Intermédiaire
🧠 Fondamentaux
20 XP
0 personnes ont réussi
Counter le plus frequent
Trouver les éléments les plus fréquents d'une collection, c'est un besoin classique : les mots-clés les plus recherchés, les erreurs les plus courantes, les produits les plus vendus. Counter du module collections fait ça en une ligne.
Counter prend une séquence et compte les occurrences. most_common(n) renvoie les n plus fréquents.
Exemple : from collections import Counter c = Counter(['a', 'b', 'a', 'c', 'a', 'b']) c.most_common(2) donne [('a', 3), ('b', 2)]
Écris une fonction top_n(texte, n) qui retourne les n mots les plus fréquents dans le texte (en minuscules) sous forme de liste de tuples (mot, count).
Exemple : top_n('le chat le chien le oiseau', 2) renvoie [('le', 3), ('chat', 1)]
Tests (2/4)
Top 2
result = top_n('le chat le chien le oiseau', 2)
assert result[0] == ('le', 3)
Top 1
result = top_n('a b a b a', 1)
assert result == [('a', 3)]
+ 0 tests cachés
Indices (3 disponibles)
Solution officielle
from collections import Counter
def top_n(texte, n):
mots = texte.lower().split()
return Counter(mots).most_common(n)