demande aide pour exercice simple

demande aide pour exercice simple - Python - Programmation

Marsh Posté le 15-11-2014 à 22:29:15    

Bonjour  
débutant basique    cette question élémentaire me bloque complétement.
exercice issu du cours de vincent Le Goff
i=1
while i< 20 :
 if i % 3==0:
  i += 4
                print ("on incrémente i de 4 . i est maintenant égale à ",i)
  continue # On retourne au while sans executer les autres lignes
 
 print  (" La variable i = ",i)
  i +=i

apres execution une erreur est signifiée au bout de la ligne 5
Message   inconsistent use tabs and spaces in indentation.
Je suis incapable de comprendre ou est l'erreur.
 
Je remercie vivement la personne qui acceptera de m'aider

Reply

Marsh Posté le 15-11-2014 à 22:29:15   

Reply

Marsh Posté le 16-11-2014 à 00:21:34    

Tu utilise des espaces ET des tab pour indenter, il faut choisir l'un ou l'autre.
Il y a aussi une erreur, le code corrigé :
 

Code :
  1. i=1
  2. while i< 20 :
  3.   if i % 3==0:
  4.     i += 4
  5.     print ("on incrémente i de 4 . i est maintenant égale à ",i)
  6.     continue # On retourne au while sans executer les autres lignes
  7.   print  (" La variable i = ",i)
  8.   i +=i


 
Le compilo gueule parceque la ligne print etait indenté sans raison. Les indentations ont un sens en Python, contrairement a la plupart des langages.
 
Maintenant, le code marche : http://ideone.com/TvJdeH


Message édité par khoyo le 16-11-2014 à 00:22:47
Reply

Marsh Posté le 16-11-2014 à 21:55:51    

Merci pour cette réponse extrêmement rapide .
En effet , votre code fonctionne parfaitement.
Mais ( et c'est mon but ) lorsque j'essaye de l'écrire moi même , il ne fonctionne pas.
Je respecte cette fois les tab uniquement ( je ne savais pas )
donc sur cette base je vais continuer de chercher .
Et merci encore pour cette aide précieuse.

Reply

Marsh Posté le 17-11-2014 à 18:14:48    

Les espaces sont préféré en python (Voir la PEP-8 https://www.python.org/dev/peps/pep-0008#tabs-or-spaces )
 
D'ailleurs, il est conseillé plus haut dans le même document d'utiliser 4 espaces pour indenter (je n'en avait utiliser que 2).
 
Ce genre de comportement peut en général être réglé dans les options de ton éditeur de texte. Qu'utilise tu ?
 
D'ailleurs, l'erreur est elle toujours la même ?

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed