Python の 1 行に複数の if ステートメント

Fariba Laiq 2022年4月14日
Python の 1 行に複数の if ステートメント

if-elif-else ブロックを書くときはいつでも、それらを別々の行に書きます。しかし、これらのステートメントを 1 行で記述する方法もあります。ただし、コードの可読性と理解性が低下するため、お勧めしません。ただし、一般的な知識として、これらのステートメントを 1 行のコードで記述することもできます。

サンプルコード:

# python 3.x
a = 2
b = 3
if a < b:
    print("a is less than b")
elif a == b:
    print("a is equal to b")
else:
    print("a is greater than b")

出力:

a is less than b

Python で 1 行に複数の if ステートメントを書く

ここで、同じ if-elif-else コードブロックを 1 行で記述したい場合。次のようにコードを書く必要があります。

このコードでは、最初に、条件 a<b が真の場合に表示するメッセージを出力します。そうでない場合、条件 a==b が真の場合にコードは 2 番目のメッセージを出力します。また、上記の条件のいずれにも当てはまらない場合は、else 部分内の print ステートメントが実行されます。

サンプルコード:

# python 3.x
a = 2
b = 3
print("a is less than b") if a < b else (
    "a is equal to b" if a == b else "a is greater than b"
)

出力:

a is less than b
著者: Fariba Laiq
Fariba Laiq avatar Fariba Laiq avatar

I am Fariba Laiq from Pakistan. An android app developer, technical content writer, and coding instructor. Writing has always been one of my passions. I love to learn, implement and convey my knowledge to others.

LinkedIn

関連記事 - Python Statement