← retour aux snippets

collections.Counter: addition et soustraction de compteurs

Combiner et normaliser des fréquences facilement.

python collections #add#subtract

objectif

Combiner et normaliser des fréquences facilement.

code minimal

from collections import Counter
a = Counter("abbc"); b = Counter("bccd")
c = a + b
d = a - b  # retire les comptes, pas de négatifs
print(c["b"] == 3 and d["a"] == 1)  # attendu: True

utilisation

from collections import Counter
c = Counter("abca")
c.subtract("aa")  # décrémente
print(c["a"] == 1)

variante(s) utile(s)

from collections import Counter
print(dict((Counter("ab") | Counter("bc")).items())["b"] >= 1)

notes

  • Les opérateurs +, -, | (max), & (min) sont définis pour Counter.
  • subtract peut produire des comptes négatifs (attention).