Le comte de lettres dans un mot en python de débogage

Je suis en train de compter le nombre de " e " apparaît dans un mot.

def has_no_e(word):     #counts 'e's in a word
    letters = len(word)
    count = 0
    while letters >= 0:
        if word[letters-1] == 'e':
            count = count + 1
        letters = letters - 1
    print count

Il semble que cela fonctionne bien sauf lorsque le mot se termine par un "e". Il comptera que 'e' deux fois. Je n'ai aucune idée pourquoi. Toute aide?

Je sais que mon code ne peut être bâclée, je suis un débutant! Je suis juste essayer de comprendre la logique derrière ce qui se passe.

Quand les lettres == 0 ce qui va arriver? Pourquoi êtes-vous tester pour while letters >= 0? Pouvez-vous expliquer pourquoi vous êtes en train de faire cela? Une explication serait utile.

OriginalL'auteur Johnny | 2010-12-30