IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

syntaxe ereur else if


Sujet :

Python

  1. #1
    strepoetlo
    Invité(e)
    Par défaut syntaxe ereur else if
    bonjour je suis le tuto proposer sur ce site pour apprendre à programmer en python, je ne suis qu'au tout début du tutoriel mais je bute sur un erreur, en effet la commande "else" ne marche pas.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    >>> maison = "blanche"
    >>> if maison == "blanch":
    	print "la maison est blanch"
    	else:
     
    SyntaxError: invalid syntax
    >>>
    et il me surligne else
    je ne comprend pas.
    cordialement paul
    Dernière modification par strepoetlo ; 09/01/2010 à 14h15.

  2. #2
    Membre éprouvé
    Homme Profil pro
    Inscrit en
    Décembre 2007
    Messages
    758
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 45
    Localisation : France

    Informations professionnelles :
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Décembre 2007
    Messages : 758
    Points : 970
    Points
    970
    Par défaut
    bonjour,

    c'est un problème d'indentation très classique quand on débute avec python, le code bien indenté est le suivant:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    maison = "blanche"
    if maison == "blanche":
        print "la maison est blanche"
    else:
        print "la maison n'est pas blanche"

  3. #3
    strepoetlo
    Invité(e)
    Par défaut re
    merci pour votre réponse, mais je en comprend pas j'ai fait aussi ce que vous disiez et voilà ce qu'il ce passe
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    >>> maison = "blanche"
    >>> if maison =="blanche":
    	print "la maison est blmanche"
        else:
     
      File "<pyshell#9>", line 3
        else:
     
    ^
    IndentationError: unindent does not match any outer indentation level
    >>>

  4. #4
    Expert confirmé Avatar de PauseKawa
    Homme Profil pro
    Technicien Help Desk, maintenance, réseau, système et +
    Inscrit en
    Juin 2006
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Technicien Help Desk, maintenance, réseau, système et +
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 725
    Points : 4 005
    Points
    4 005
    Par défaut
    Bonjour,

    else 'quoi'

    Si (if) la maison est blanche, je fais cela

    Aprés c'est optionnel

    Ou si (elif), elle est verts
    Sinon (else), je fais cela

    @+

  5. #5
    strepoetlo
    Invité(e)
    Par défaut
    je ne comprend pas ???
    que je mettes "elif ou else" sa revient au même sa me fait la même erreur, j'ai essayer de changer de programme je les mis a jour, j'ai essayer les version anterieur, mais rien ne fait?

  6. #6
    Expert confirmé Avatar de PauseKawa
    Homme Profil pro
    Technicien Help Desk, maintenance, réseau, système et +
    Inscrit en
    Juin 2006
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Technicien Help Desk, maintenance, réseau, système et +
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 725
    Points : 4 005
    Points
    4 005
    Par défaut
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    >>> maison = "blanche"
    >>> if maison == "blanch":
    ...     print "la maison est blanch"
    ... else:
    ... 
      File "<stdin>", line 4
     
        ^
    IndentationError: expected an indented block
    >>> if maison == "blanch":
    ...     print "la maison est blanch"
    ...     else:
      File "<stdin>", line 3
        else:
           ^
    SyntaxError: invalid syntax
    >>> if maison == "blanche":
    ...     print "la maison est blanche"
    ... 
    la maison est blanche
    >>> if maison == "blanche":
    ...     print "la maison est blanche"
    ... else:
    ...     print "la maison n'est pas blanche"
    ... 
    la maison est blanche
    Lorsque tu ne vois que ... c'est que je fais entrée

  7. #7
    strepoetlo
    Invité(e)
    Par défaut
    Oui, mais justement je fais comme ce que tu fait dans ta dernière partie.
    sauf que moi quand je fait entrer après
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    print "la maison est blanche"
    sa reviens a la ligne au même niveau que la dernier commande alors que toi dans ton exemple sa reviens directement au niveau que if.
    donc moi quand j'arrive a print "la maison est blanche", je fait entrer, aprés j'appuie sur espace 4 fois.

  8. #8
    Expert confirmé Avatar de PauseKawa
    Homme Profil pro
    Technicien Help Desk, maintenance, réseau, système et +
    Inscrit en
    Juin 2006
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Technicien Help Desk, maintenance, réseau, système et +
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 725
    Points : 4 005
    Points
    4 005
    Par défaut
    Ok

    Je remplace les 4 espaces (indentation) par des * et <Entrer> pour le fait de faire entrer au clavier.

    maison = "blanche"<Entrer>
    if maison == "blanche":<Entrer>
    ****print "la maison est blanche"<Entrer>
    else:<Entrer>
    ****print "la maison n'est pas blanche"<Entrer>
    <Entrer>

  9. #9
    Expert confirmé Avatar de PauseKawa
    Homme Profil pro
    Technicien Help Desk, maintenance, réseau, système et +
    Inscrit en
    Juin 2006
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Technicien Help Desk, maintenance, réseau, système et +
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 725
    Points : 4 005
    Points
    4 005
    Par défaut
    Oups...

    C'est Python 3.xx ?

    Le print c'est print ("montext")
    Et non pas print "montexte" (ancienne syntaxe)

    Edit: Désolé, je n'ai pas encore eu le courage de passer au 3.xx

  10. #10
    strepoetlo
    Invité(e)
    Par défaut
    même en faisant strictement ce que vous me dites, c'est à dire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    >>> if maison == "blanche":
    	    print "la maison est bmanche"
    	    else:
     
    SyntaxError: invalid syntax
    toujours le même message d'erreur
    non je suis sur 2.6

  11. #11
    strepoetlo
    Invité(e)
    Par défaut
    oui donc je n'arrive pas sur le python shell, mais j'y arrive dans la console.
    donc j'utiliserais la console.
    merci beaucoup

  12. #12
    Expert confirmé Avatar de PauseKawa
    Homme Profil pro
    Technicien Help Desk, maintenance, réseau, système et +
    Inscrit en
    Juin 2006
    Messages
    2 725
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Hérault (Languedoc Roussillon)

    Informations professionnelles :
    Activité : Technicien Help Desk, maintenance, réseau, système et +
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juin 2006
    Messages : 2 725
    Points : 4 005
    Points
    4 005
    Par défaut
    Sinon :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    patrice@Zeus:~$ /usr/bin/python3.0
    Python 3.0.1+ (r301:69556, Apr 15 2009, 15:59:22) 
    [GCC 4.3.3] on linux2
    Type "help", "copyright", "credits" or "license" for more information.
    >>> maison = "blanche"
    >>> if maison == "blanche":
    ...     print "la maison est blanche"
      File "<stdin>", line 2
        print "la maison est blanche"
                                    ^
    SyntaxError: invalid syntax
    >>> if maison == "blanche":
    ...     print ("la maison est blanche")
    ... 
    la maison est blanche
    @+

    Edit pour le rouge.

  13. #13
    Membre du Club
    Profil pro
    Inscrit en
    Septembre 2008
    Messages
    105
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2008
    Messages : 105
    Points : 67
    Points
    67
    Par défaut
    Bonjour,

    Le "python shell" est très pénible à utiliser...
    Mais ça marche :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
    >>> maison="blanche"
    >>> if maison=="blanch":
    	print "la maison n'est pas blanche"
    else:
    	print "la maison est bien blanche"
    Le résultat est :
    la maison est bien blanche
    @+

  14. #14
    strepoetlo
    Invité(e)
    Par défaut
    merci beaucoup a présent ça marche, je vais pouvoir continuer le tuto, encore merci

Discussions similaires

  1. Erreur de syntaxe avec else
    Par nicolas76210 dans le forum Langage
    Réponses: 4
    Dernier message: 23/03/2015, 15h34
  2. [Batch] Syntaxe if else shell
    Par lozeba dans le forum Scripts/Batch
    Réponses: 8
    Dernier message: 10/09/2014, 16h21
  3. Problème syntaxe If .. Else
    Par NeverKevin dans le forum Excel
    Réponses: 2
    Dernier message: 02/02/2014, 17h59
  4. [CR XI] Problème de syntaxe IF-ELSE || IF-ELSEIF-ELSE
    Par ygyongy dans le forum Formules
    Réponses: 3
    Dernier message: 23/07/2013, 17h30
  5. syntaxe If Else
    Par lolove94 dans le forum Macros et VBA Excel
    Réponses: 8
    Dernier message: 31/03/2008, 19h31

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo