Python >> Tutoriel Python >  >> Python

Python Ternaire Plusieurs Lignes

Et si vous avez un opérateur ternaire très long ?

var = 'I want to learn Python' if 42**2<166 else 'I want to learn Go programming'
print(var)
# I want to learn Go programming

Problème :Comment écrire l'opérateur ternaire sur plusieurs lignes ?

Bref récapitulatif :opérateur ternaire

Opérateur ternaire :L'opérateur ternaire le plus basique x if c else y se compose de trois opérandes x , c , et y . C'est une expression avec une valeur de retour. L'opérateur ternaire renvoie x si l'expression booléenne c évalue à True . Sinon, si l'expression c évalue à False , l'opérateur ternaire renvoie l'alternative y .

Syntaxe :Les trois opérandes sont écrits sous la forme x if c else y qui se lit comme "retour x si c sinon renvoie y “. Écrivons cela plus intuitivement comme :

<OnTrue> if <Condition> else <OnFalse>
Opérande Description
L'expression de retour de l'opérateur si la condition est évaluée à True
<État> La condition qui détermine s'il faut retourner la branche ou .
L'expression de retour de l'opérateur si la condition est évaluée à False

Article connexe  :Pour un tutoriel complet sur l'opérateur ternaire, consultez notre article de blog détaillé.

Méthode :parenthèses pour étendre la ligne logique sur plusieurs lignes physiques

Solution  :Vous pouvez étendre n'importe quelle ligne logique en Python sur plusieurs lignes physiques en utilisant la parenthèse.

var = 'I want to learn Python' if 42**2<166 else 'I want to learn Go programming'
print(var)

var = ('I want to learn Python'
       if 42**2<166 else
       'I want to learn Go programming')
print(var)
# I want to learn Go programming

Il s'agit de la manière standard PEP8 de couper les longues lignes, si vous ne pouvez pas le faire de manière plus naturelle (comme en évitant l'opérateur ternaire et en utilisant l'instruction if dans cet exemple).

Essayez vous-même :

Exercice :Écrivez un opérateur ternaire imbriqué et décomposez-le en plusieurs lignes !


Prochain article