2017-10-16 3 views
-7

J'ai écrit ce code pour une fonction pour vérifier pangram et cela ne fonctionne pas. J'ai besoin d'une explication pour savoir où je me trompe.Quel est le problème avec mon code pour la fonction pangram?

def is_mypangram(phrase): 
    alphabets = 'abcdefghijklmnopqrstuvwxyz' 
    for letters in alphabets: 
     for char in phrase: 
      if letters not in phrase: 
       return False 
      else: 
       return True 
+4

Pour commencer, vous pouvez attendre jusqu'à la fin de l'itération avant de revenir. Aussi, arrêtez de crier, c'est très impoli. –

+3

Donnez un [mcve], * "en quelque sorte ce n'est pas précis" * n'est pas un bon problème de description. Montrez également quelques efforts de débogage - vous pourriez trouver http://pythontutor.com/ utile si vous ne pouvez pas visualiser ce qui se passe. – jonrsharpe

+0

ok, merci. permettez-moi de reformuler ça. –

Répondre

0

Brisons votre code ligne par ligne.

for letters in alphabets prend une lettre à la fois, donc nous commençons par un

for char in phrase prend le premier caractère de phrase, nous allons utiliser example comme la chaîne de phrase . Alors char est e

if letters not in phrase attente, cette vérification si a est en phrase. Si c'est le cas, il renvoie False.

Sinon, il renvoie True.

Vous n'utilisez pas fondamentalement votre char n'importe où. Vous ne continuez pas non plus à boucler; ceci seulement vérifier la première lettre dans l'alphabet et la première lettre de phrase.