Partage
  • Partager sur Facebook
  • Partager sur Twitter

Indentation

SyntaxError: unindent does not match any outer indentation level

    7 novembre 2019 à 13:09:38

    Bonjour,
    Pouvez vous m'expliquer comment utiliser les indentations sur Python 3.8.0. 
    En effet, dans les boucles (if et else ) le curseur ne se place pas comme dans le cours et par la suite si je mets les trois points j'ai un message d'erreur 
    Moi (test &)
    SyntaxError: invalid syntax
    >>> if a >= 2 and a <=8 :
    print ("ok dans l'intervalle.")
        else:

    Moi (test 2)
    >>> # on fait un test pour savoir si a est comprise entre l'intervalle de 2 et 8 inclu
    >>> a = 5
    >>> if a >= 2 :
    if a <= 8 :
    print( " a est dans l'intervale.")
    else :
    print(" a n'est pas dans l'intervalele.")
        else :
    SyntaxError: unindent does not match any outer indentation level   
    Cours 
    • Partager sur Facebook
    • Partager sur Twitter
      7 novembre 2019 à 14:06:28

      Ton print n'est pas indente pour ton if et ton else. Aussi ton second if doit etre indente pqr rapport au premier. Au passage python est tres intelligentm si tu lui dis if 8 <= a <= 2 : il va comprendre>

      Avec la bonne indentation ca donne ca : 

      Ton test 1 : 

      if a >= 2 and a <=8 :
          print ("ok dans l'intervalle.")
      else :
          print(" a n'est pas dans l'intervalle.")
      Ton test 2 : 
      a = 5
      if a >= 2 :
          if a <= 8 :
              print( " a est dans l'intervalle.")
          else :
              print(" a n'est pas dans l'intervalle.")
      else :
          print(" a n'est pas dans l'intervalle.")
      Tu peux aussi ecrire 
      if  2 <= a <= 8 :
          print ("ok dans l'intervalle.")
      else :
          print(" a n'est pas dans l'intervalle.")
      • Partager sur Facebook
      • Partager sur Twitter
        8 novembre 2019 à 7:42:49

        HugoCarpentier1 a écrit:

        Au passage python est tres intelligentm si tu lui dis if 8 <= a <= 2 : il va comprendre>

        Alors non python n'est pas très intelligent, mais son créateur oui par exemple... Il n'y a même pas d'intelligence artificielle ! L'intelligence vient du développeur.

        Ensuite la ligne que tu proposes, j'ai des doutes sur le fait qu'elle fasse ce que le PO souhaite ;)

        • Partager sur Facebook
        • Partager sur Twitter

        Celui qui trouve sans chercher est celui qui a longtemps cherché sans trouver.(Bachelard)
        La connaissance s'acquiert par l'expérience, tout le reste n'est que de l'information.(Einstein)

          8 novembre 2019 à 11:59:33

          C'est une facon de parler :p. Et puis dans le code je l'ai bien ecris dans le bon sens ^^.
          • Partager sur Facebook
          • Partager sur Twitter
            8 novembre 2019 à 17:33:47

            Tu peux tester pour a=6 par exemple. Si ça ne rentre pas dans la condition, c'est que tu as fais une erreur.

            Il veut que a soit compris entre 2 et 8

            • Partager sur Facebook
            • Partager sur Twitter

            Celui qui trouve sans chercher est celui qui a longtemps cherché sans trouver.(Bachelard)
            La connaissance s'acquiert par l'expérience, tout le reste n'est que de l'information.(Einstein)

              8 novembre 2019 à 19:27:31

              Dans le code, ça marche, parce que jai écris 2<= à <= 8

              Je lai dis jai inverse dans le texte mais pas dans le code ^^

              • Partager sur Facebook
              • Partager sur Twitter
                8 novembre 2019 à 22:25:36

                Comme ton code n'était pas dans les balises code, je n'ai pas lu... Ça fait un peu fouillis.
                • Partager sur Facebook
                • Partager sur Twitter

                Celui qui trouve sans chercher est celui qui a longtemps cherché sans trouver.(Bachelard)
                La connaissance s'acquiert par l'expérience, tout le reste n'est que de l'information.(Einstein)

                  8 novembre 2019 à 23:06:53

                  J'ai fais un copier coller de son texte c'est pour ça ^^', mais oui j'aurais du
                  • Partager sur Facebook
                  • Partager sur Twitter
                    10 novembre 2019 à 11:37:25

                    De mon point de vue vous n'avez pas répondu au problème soulevé par TouffailAL qui était que Python n'affiche pas automatiquement la bonne indentation lors de l'encodage.

                    J'ai exactement le même problème, comme le montre la copie ci-dessous du mon essai de saisie d'un exemple tiré de la leçon "Creez des structres conditionnnelles"

                    Python 3.8.0 (v3.8.0:fa919fdf25, Oct 14 2019, 10:23:27)

                    [Clang 6.0 (clang-600.0.57)] on darwin

                    Type "help", "copyright", "credits" or "license()" for more information.

                    >>> a = 5

                    >>> if a > 0:

                    print("an positif")

                    elif a<0:

                    SyntaxError: invalid syntax

                    >>> 

                    Python 3.8.0 (v3.8.0:fa919fdf25, Oct 14 2019, 10:23:27)

                    [Clang 6.0 (clang-600.0.57)] on darwin

                    Type "help", "copyright", "credits" or "license()" for more information.

                    >>> a = 5

                    >>> if a > 0:

                    print("a positif")

                    elif a <0:

                    SyntaxError: unindent does not match any outer indentation level

                    >>> 

                      Dans mon premier essai, python a indenté automatiquement l'instruction elif au nivea

                    • Partager sur Facebook
                    • Partager sur Twitter
                      10 novembre 2019 à 12:49:10

                      C'est incompréhensible si tu n'utilises pas les balises de code (l'indentation de ton code est perdue).
                      • Partager sur Facebook
                      • Partager sur Twitter
                        10 novembre 2019 à 19:49:53

                        PierreTrehiou a écrit:

                        Dans mon premier essai, python a indenté automatiquement l'instruction elif au nivea

                        Python n'indente rien automatiquement, c'est la console Python (plutôt ipython ? Je crois pas que la console python par défaut indente automatiquement) ou ton éditeur de texte qui le font.

                        • Partager sur Facebook
                        • Partager sur Twitter

                        Blond, bouclé, toujours le sourire aux lèvres...

                        Indentation

                        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
                        • Editeur
                        • Markdown