Imbrication d'opérateurs ternaires en python

L'opérateur ternaire rassemble une simple instruction if-else sur une seule ligne, ce qui facilite la lecture.

instruction if-else

Par exemple, si vous voulez afficher foo comme valeur lorsque v est supérieur à 10, et bar sinon, écrivez-le dans l'instruction if-else et écrivez-le sur 4 lignes.

if-4 lignes lorsqu'il est écrit dans une instruction else


In [22]: for v in range(-5, 15):   
    ...:     if v > 10:               
    ...:         p = 'foo'            
    ...:     else:                    
    ...:         p = 'bar'            
    ...:     print(v, p)              
    ...:                              
-5 bar                                
-4 bar                                
-3 bar                                
-2 bar                                
-1 bar                                
0 bar                                 
1 bar                                 
2 bar                                 
3 bar                                 
4 bar                                 
5 bar                                 
6 bar                                 
7 bar                                 
8 bar                                 
9 bar                                 
10 bar                                
11 foo                                
12 foo                                
13 foo                                
14 foo                                

Opérateur triangulaire

La grammaire de l'opérateur ternaire est

(variable) = (Valeur lorsque la condition est vraie) if (conditions) else (conditionsがFalseのときの値) 

Un opérateur ternaire peut être écrit sur une seule ligne.

Une ligne lors de l'écriture avec un opérateur ternaire


In [26]: for v in range(-5, 15):
    ...:     p = 'foo' if v > 10 else 'bar'
    ...:     print(v, p)
-5 bar
-4 bar
-3 bar
-2 bar
-1 bar
0 bar
1 bar
2 bar
3 bar
4 bar
5 bar
6 bar
7 bar
8 bar
9 bar
10 bar
11 foo
12 foo
13 foo
14 foo

** Ici, les instructions if-else entre les instructions for-print sont résumées par l'opérateur ternaire. ** **

Nid

instruction if-elif-else

Lors de l'ajout d'une condition et de la sortie "infoobar" si elle est inférieure à 0, ajoutez "elif".

Cela affichera "'foo' s'il est supérieur à 10, 'foobar' s'il est inférieur à 0, et'bar 'dans le cas contraire."

if-Deux conditions de déclaration ou plus


In [36]: for v in range(-5, 15, 1):
    ...:     if v > 10:
    ...:         p = 'foo'
    ...:     elif v < 0:
    ...:         p = 'foobar'
    ...:     else:
    ...:         p = 'bar'
    ...:     print(v, p)
    ...:
-5 foobar
-4 foobar
-3 foobar
-2 foobar
-1 foobar
0 bar
1 bar
2 bar
3 bar
4 bar
5 bar
6 bar
7 bar
8 bar
9 bar
10 bar
11 foo
12 foo
13 foo
14 foo

Imbrication d'opérateurs ternaires

La syntaxe d'imbrication des opérateurs ternaires est

(variable) = (Valeur lorsque la condition est vraie) if (conditions) else (conditionsがFalseのときの値) if (conditions) else (conditionsがFalseのときの値) ...if-()-else-()Connectez-vous à l'infini

Opérateur ternaire imbriqué


In [38]: for v in range(-5, 15, 1):
    ...:     p = 'foo' if v > 10 else 'foobar' if v < 0 else 'bar'
    ...:     print(v, p)
-5 foobar
-4 foobar
-3 foobar
-2 foobar
-1 foobar
0 bar
1 bar
2 bar
3 bar
4 bar
5 bar
6 bar
7 bar
8 bar
9 bar
10 bar
11 foo
12 foo
13 foo
14 foo

référence

Qiita - opérateur alternatif (Python)

Recommended Posts

Imbrication d'opérateurs ternaires en python
Imbrication d'opérateurs ternaires Python
Python en optimisation
CURL en Python
Métaprogrammation avec Python
Python 3.3 avec Anaconda
Géocodage en python
Méta-analyse en Python
Unittest en Python
Époque en Python
Discord en Python
Allemand en Python
DCI en Python
tri rapide en python
nCr en python
N-Gram en Python
Programmation avec Python
# 3 [python3] Divers opérateurs
Plink en Python
Constante en Python
FizzBuzz en Python
Étape AIC en Python
CSV en Python
Assemblage inversé avec Python
Réflexion en Python
Opérateur Trinity (Python)
Constante en Python
nCr en Python.
format en python
Scons en Python 3
Puyopuyo en python
python dans virtualenv
PPAP en Python
Quad-tree en Python
Réflexion en Python
Chimie avec Python
Hashable en Python
DirectLiNGAM en Python
LiNGAM en Python
Aplatir en Python
Aplatir en python
AtCoder # 36 quotidien avec Python
Texte de cluster en Python
Daily AtCoder # 32 en Python
Daily AtCoder # 6 en Python
Daily AtCoder # 18 en Python
Modifier les polices en Python
Motif singleton en Python
Opérations sur les fichiers en Python
Lire DXF avec python
Daily AtCoder # 53 en Python
Séquence de touches en Python
Utilisez config.ini avec Python
Résoudre ABC168D en Python
AtCoder # 7 tous les jours avec Python
Décomposition LU en Python
Une doublure en Python
GRPC simple en Python