HOWTO · Python
Python の一行で if...else 文
このチュートリアルでは、Python でインライン if else を使用する方法を示します。
このページの内容
多くのプログラミング言語では、条件を評価するために if ... else 文が頻繁に使われています。
Python にはインラインの if ... else 文があり、コンパクトなバージョンの if ... else 文を一行にまとめることができます。このようなインライン文は制限されており、慎重にカスケードされた場合にのみ複数の if ... else 文を含むことができます。しかし、それらは else 句を含まなければならません。
このような文はコードの可読性を向上させ、コードを短くすっきりさせ、値や他の関数を代入する際に使用することができます。
以下のコードでは、別の変数の値に基づいて変数に値を代入する際に使用します。
b = 5
a = 1 if b > 2 else 2
print(a)
出力:
1
このようなインラインの if ... else 文は似ているため、Python では三項演算子とみなされていることに注意してください。
インラインの if ... else 文を print() のような他の関数と一緒に使って、条件に基づいて何かを表示することもできます。
a = 0
b = 2
print(a if a != 0 else b)
出力:
2
インライン文で複数の if ... else 条件をマッピングすることができます。例えば、
b = 5
a = 1 if b == 2 else (2 if b > 3 else 3)
print(a)
出力:
2
インラインの if ... else 文では elif 条件は使用できません。