Convention if statement

Résolu
MickaToast Messages postés 162 Statut Membre -  
fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   -
Bonsoir,

alors voilà, j'ai une petite question par rapport à la convention python.

Est-ce que c'est mieux d'écrire:
if reponseServeur == "True":
    break
elif reponseServeur == "False":
    print("\nCe compte existe deja, veuillez utiliser un autre nom de compte\n\n\n")
else:
    print("\nUne erreur est survenue. Veuillez reessayer\n\n\n")

ou alors:
if reponseServeur == "True": break
elif reponseServeur == "False": print("\nCe compte existe deja, veuillez utiliser un autre nom de compte\n\n\n")
else: print("\nUne erreur est survenue. Veuillez reessayer\n\n\n")

?

Sachant que chaque instructions contient seulement une ligne et que la deuxième technique economise 3 lignes.

Merci pour d'avance pour les réponses!

4 réponses

  1. fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   1 847
     
    Bonjour,

    C'est mieux d'aller à la ligne.
    Donc cette version :
    if reponseServeur == "True":
        break
    elif reponseServeur == "False":
        print("\nCe compte existe deja, veuillez utiliser un autre nom de compte\n\n\n")
    else:
        print("\nUne erreur est survenue. Veuillez reessayer\n\n\n")
    


    Note : si reponseServeur est un booléen, c'est True et False sans guillemet qu'il faut utiliser.

    Google is your friend
    1
    1. canarder Messages postés 2034 Statut Membre 357
       
      Tu ne précises pas pourquoi c'est mieux.
      0
    2. fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   1 847
       
      Car la PEP 8 le recommande et que c'est précisément l'objet de la question...
      0
  2. canarder Messages postés 2034 Statut Membre 357
     
    C'est exactement pareil, certains disent seulement que la première écriture est plus lisible, mais je suis pas de cet avis.
    0
  3. MickaToast Messages postés 162 Statut Membre 24
     
    Et d'après la convention python il y a aucune règle? Car je n'arrive pas à trouver quand il y a une ligne uniquement, certes quand il y en a plusieurs j'utilise toujours des indentations sinon ça devient vite illisible.
    0
    1. MickaToast Messages postés 162 Statut Membre 24
       
      D'ailleurs, est-ce que c'est egalement le cas pour les blocs try/except?
      0
    2. canarder Messages postés 2034 Statut Membre 357
       
      Qu'est-ce que tu appelles "convention" ? Il y a une syntaxe à respecter, et tu la respectes dans les deux cas.
      0
    3. MickaToast Messages postés 162 Statut Membre 24
       
      J'appelle "convention" la PEP python
      0
  4. MickaToast Messages postés 162 Statut Membre 24
     
    Dans ce cas si la PEP 8 le recommande j'utiliserais cette syntaxe. Et d'ailleurs pour la variable reponseServeur ce n'est pas un booléen, elle peut aussi retourner "Erreur".
    Et d'ailleurs si ça aurait été un booléen, j'aurais utiliser true et false sans guillement, et sans true et false ;)
    if reponseServeur:
    


    En tout cas merci à vous deux pour vos réponses et bonne journée!
    0
    1. fiddy Messages postés 441 Date d'inscription   Statut Contributeur Dernière intervention   1 847
       
      Très juste ;-)
      Bonne journée à toi.
      0