Partage
  • Partager sur Facebook
  • Partager sur Twitter

problème avec if, else

    4 mars 2011 à 13:06:10

    bonjours je rencontre un problème avec if, else, elif lorsqu'il faut marquer dans la console des bouts de codes PYTHON:
    a = 5
    if a > 0: # si a est positif
        print("a est positif.")
    if a < 0: # a est négatif
        print("a est négatif.")

    tout les bout de codes avec if ne marchent pas la console m'afiche
    file "<stdin>", line 3
    if a < 0:
    ^

    pourquoi m’affiche t'elle cette erreur alors que je recopie tout bêtement le code du cours?
    • Partager sur Facebook
    • Partager sur Twitter
      4 mars 2011 à 14:40:27


      a = 5
      if a > 0:
            print("a est positif.")
      else: #sinon a est négatif
            print("a est négatif.")
      
      • Partager sur Facebook
      • Partager sur Twitter
        4 mars 2011 à 22:28:52

        Dans la doc, en résumé ils disent que la flèche pointe sur la ligne où l'erreur à été détecte et l'erreur est causée par ce qui précède... Donc par ton a = 5... Enfin je ne vois pas ce qui ne va pas! Il nous faut plus d'infos. Genre si tu fais :
        if 4 > 2 : 
            print('Yes')
        

        ça marche?

        • Partager sur Facebook
        • Partager sur Twitter
          5 mars 2011 à 12:27:48

          Salut ton erreur est toute bête , tu as demandé à IDLE de test a>0 et a<0 cela n'est pas possible avec idle c'est comme ça , je pense que tu t'attendais à se que le programme te renvoi a est sup a 0 ou inf a 0 directement dans ta fenêtre python Shell . Deux solutions sont possibles, soit tu ouvres une nouvelle fenêtre en faisant : file => New window (est tu peux réécrire le même code qu'au départ )
          ou bien tu restes dans le shell est tu écris ceci:

          a=5
          if a>0:                        #si a est supérieur à 0 condition valide et on affiche le print
                print('a est positif')
          elif a==0 :                   #si a egale 0 on affiche le print 
                print('a est nul')
          else :
                print('a est négatif')  #si a n'est ni nul ni supérieur à 0 c'est donc qu'il est négatif 
                                        #( le else se lit comme un ""sinon"")
          


          PS : Sache que la solution avec if, elif, else te sera plus utile par la suite ;)
          • Partager sur Facebook
          • Partager sur Twitter
            6 mars 2011 à 0:13:57

            En mode interactif, il faut laisser une ligne vide après un bloc (if dans ton cas) pour en sortir.
            • Partager sur Facebook
            • Partager sur Twitter

            problème avec if, else

            × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
            × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
            • Editeur
            • Markdown