Python の一行で if...else 文
Manav Narula
2023年10月10日
多くのプログラミング言語では、条件を評価するために 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
条件は使用できません。
著者: Manav Narula
Manav is a IT Professional who has a lot of experience as a core developer in many live projects. He is an avid learner who enjoys learning new things and sharing his findings whenever possible.
LinkedIn