Adloun

Le module collections fournit Counter, un compteur tout fait

Exercice supplémentaire · niveau 2 · NSI (première), chapitre 5 — Les dictionnaires · Les outils de la bibliothèque

Énoncé

Le module collections fournit Counter, un compteur tout fait. Le comparer à occurrences. Puis lire une clé absente d'un Counter : que se passe-t-il ?

Corrigé


from collections import Counter

mot = "anticonstitutionnellement"
assert dict(Counter(mot)) == occurrences(mot)
assert Counter(mot).most_common(2) == [("n", 5), ("t", 5)]

most_common fait en un appel le travail de l'exercice top — et confirme au passage l'ex aequo entre n et t.

La lecture d'une clé absente ne lève rien.


c = Counter("abc")
assert c["z"] == 0          # PAS de KeyError
assert "z" not in c         # ... et la cle n'a pas ete creee

C'est un get(x, 0) intégré. Commode, mais à double tranchant : une faute de frappe dans une clé rend au lieu de signaler l'erreur — le programme continue avec une valeur plausible et fausse. Savoir écrire occurrences à la main reste l'objectif du chapitre ; Counter est ce qu'on utilise après l'avoir compris.

Les autres exercices de ce chapitre Le cours du chapitre

Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.