10. 条件分岐(IF文)

Pythonでif文(else/elif)を一行で記述する方法

投稿日:

Pythonのif文は、通常は複数行に渡って記述することになりますが、一行で簡潔に記述することもできます。
 
この記事では、Pythonの以下の3種類のif文について、一行で記述する方法を確認していきます。

ポイント

  • if else文
  • if elif文
  • if文(elseなし)

通常のif文は、次の記事を参照ください。
>> Python if文の徹底解説

 
 

if else文を一行で記述する方法

まずはif else文を一行で記述する方法を確認します。if else文を一行で記述する方法は次のようになります。

条件式がTrueの時に実行する処理 if 条件式 else 条件式がFalseの時に実行する処理:

 
if文の中の条件式や処理の順番が変わり、わかりづらくなりましたので、通常のif文との違いを番号を付けて、確認しましょう。
 
通常のif文の構成要素に番号を振ると次のようになります。
 

 
これを一行で記述するには、次のように順番を変える必要があります。

1.と2.の箇所の順番が入れ替わっています。

 
それでは、以下のif else文を使った記述を一行に書き直してみましょう。

Falseです。

 

上記のif else文を一行に書き直すと、次のようになります。

Falseです。

 
 
今度は変数xに3を代入すると、「Trueです。」と表示されました。

Trueです。

このようにして、if else文は一行でも記述することができます。

 
 

if elif文を一行で記述する方法

次にif elif文を一行で記述する方法を確認します。if elif文については、先ほど説明しました「if else文の一行で記述」を繋げて一行で記述していくことになります。
 
 
こちらも通常のif elif文との違いがわかるように番号を付けて、確認していきます。
 
通常のif elif文の構成要素に番号を振ると次のようになります。

 
これを一行で記述すると、次のように順番を変える必要があります。

1.と2.、3.と4.の箇所の順番が入れ替わっています。

 
 
それでは、以下のif elif文を使った記述を一行に書き直してみましょう。

xは10未満です。

 
 
上記のif elif文を一行に書き直すと、次のようになります。

xは10未満です。

 
 
今度は変数xに19を代入すると、「xは20未満です。」と表示されました。

xは20未満です。

 
 
最後に変数xに20を代入すると、次のようになります。

xは20以上です。

 
このようにして、if elif文も一行で記述することができます。

 
 

if文(elseなし)を一行で記述する方法

最後に、else文も無い通常のif文を一行で記述する方法を確認します。こちらは至って簡単で、if文の条件式の後の:(コロン)に続けて、処理を記述するだけです。

if 条件式: 条件式がTrueの時に実行する処理

 
次のif文を使った記述を一行に書き直してみましょう。

Trueです。

 
 
上記のif文を一行に書き直すと、次のようになります。

Trueです。

 
 
変数xに1を代入すると、

 

処理は実行されず、出力結果には何も表示されませんでした。

 
 
この記事では、Pythonの以下の3つのタイプのif文について、一行で記述する方法を確認しました。

ポイント

  • if else文
  • if elif文
  • if文(elseなし)

 
 
関連記事です。
Pythonの通常のif文については、こちらに纏めた記事がございます。

 
Pythonに関する重要なトピック全般について学んでいきたいと考えておられる方には、次のリンクをお勧めします。

 

-10. 条件分岐(IF文)

Copyright© AI-interのPython3入門 , 2019 All Rights Reserved.