Lorsque tu postes du codes sur ZDS pense à délimiter ton bloc de code avec les balises ``` pour que cela soit lisible et que l’on puisse avoir l’indentation.
Ton code :
def compter(mots,lettre):
nombre=0
for i in texte:
if i==letter:
nombre = nombre + 1
return nombre
Déjà il y a une petite erreur ligne 4, tu utilises letter
mais il n’existe pas de variable letter
, il faut utiliser la variable lettre
. De la même manière, à la ligne 3 tu utilise texte
alors qu’il n’y a pas de variable texte
il faut donc plutôt utiliser mots
.
Ensuite c’est bien for i in texte
qu’il faut utiliser.
for i in texte
va regarder les lettres d’une chaîne de caractère une par une (par exemple for i in "abcb"
, i
aura pour valeur 'a' puis 'b' puis 'c' puis 'b’).
for i in range(len(texte))
va commencer à i = 0
et va s’arrêter quand i
aura pour valeur la longueur du texte, il faudra ensuite accéder à la lettre du texte correspondante en utilisant mots[i]
dans ce cas-ci. Par exemple for i in range(len("abcb"))
, i
aura pour valeur '0' puis '1' puis '2' puis '3’.