Occurrences d'un caractère dans un mot⚓︎
Écrire une fonction compte_occurrences
qui prend en paramètres cible
, un caractère (une chaine de caractères de longueur 1), et mot
, une chaine de caractères, et qui renvoie le nombre d'occurrences de cible
dans mot
; c'est-à-dire le nombre de fois où cible
apparait dans mot
.
On n'utilisera pas la méthode
count
.
Exemples
>>> compte_occurrences("o", "bonjour")
2
>>> compte_occurrences("a", "abracadabra")
5
>>> compte_occurrences("i", "abracadabra")
0
def comptepy-undoccurrences(cible, mot):bksl-nl ...bksl-nlbksl-nlbksl-nlbksl-nlbksl-nl# testsbksl-nlassert comptepy-undoccurrences("o", "bonjour") == 2bksl-nlassert comptepy-undoccurrences("a", "abracadabra") == 5bksl-nlassert comptepy-undoccurrences("i", "abracadabra") == 0bksl-nlbksl-nldef comptepy-undoccurrences(cible, mot):bksl-nl nbpy-undoccurrences = 0bksl-nl for lettre in mot:bksl-nl if lettre == cible:bksl-nl nbpy-undoccurrences += 1bksl-nl return nbpy-undoccurrencesbksl-nlbksl-nlbksl-nl# testsbksl-nlassert comptepy-undoccurrences("o", "bonjour") == 2bksl-nlassert comptepy-undoccurrences("a", "abracadabra") == 5bksl-nlassert comptepy-undoccurrences("i", "abracadabra") == 0bksl-nlbksl-nl
A
Version recommandée
Itération avec indice⚓︎
Version possible ; peu d'intérêt
def compte_occurrences(cible, mot):
nb_occurrences = 0
for i in range(len(mot)):
if mot[i] == cible:
nb_occurrences += 1
return nb_occurrences
Version fonctionnelle⚓︎
Pour les bons élèves ; n'est pas hors programme.
def compte_occurrences(cible, mot):
return sum(1 for lettre in mot if lettre == cible)
Version non autorisée⚓︎
Avec la facilité du langage Python (count
).
def compte_occurrences(cible, mot):
return mot.count(cible)
Z