※この記事にはプロモーションが含まれています。

10. 条件分岐(IF文)

図解!Pythonのif文でelse、elifを使った複数の条件分岐

更新日:

if文とは条件に従って処理を分岐させるために使われるものです。

 
if文の条件式では数値や文字列などのオブジェクトの持つ値が等しいかどうかや大きいか小さいかを調べてTrue(条件に当てはまる)又はFalse(条件に当てはまらない)を返します。そしてTrueの時に処理を実行することになります。

 
またif文では、全ての条件に当てはまらない時の処理をelseを利用して記述します。そして、条件は1つだけではなく、複数の条件を記述することもできます。その場合はelifを利用して、条件を追加していきます。さらにこれらelif、elseの両方を利用して記述することもあります。

 
この記事ではif文において、次の3つのパターンで複数の条件分岐を記述する方法を確認していきます。

ポイント

  • if文でのelseの利用方法
  • if文でのelif の利用方法
  • if文でのelif、elseの利用方法
まずは最初にelif、elseを利用しないシンプルなif文の書き方を解説し、そこから順にelseやelifを加えたパターンを解説していきたいと思います。
 
 
複数の条件分岐以外のif文全般に関するトピックは、次の記事をご参照ください。
>> 図解!Python if文の徹底解説
 
 

動画教材紹介私(清水 義孝)が作成したコース「Pythonによるビジネスに役立つWebスクレイピング」(Udemyへのリンク)が発売中!
発売数9,000本突破を記念して、今だけ期間限定で87%オフの大セール中!!!

if文の書き方

if文の記述方法は以下になります。

if文に含まれる処理は、インデント(字下げ)して記述します(通常、インデントには半角スペース4つが使われます。)。処理が複数行ある場合も、全てインデントします。
 
インデントが終わると、if文の一連の処理は終わります。また条件式の後には、必ず :(コロン)を付けてください。

 
 

if文でelseを使った複数の条件分岐

次のように、elseを使ってif文の条件を満たさなかった場合の処理を書くことができます。

else文に含まれる処理は、インデント(字下げ)して記述します。処理が複数行ある場合も、全てインデントします。インデントが終わると、elseの一連の処理は終わります。またelseの後には、必ず :(コロン)を付けてください。

 
 

動画教材紹介私(清水 義孝)が作成したコース「Pythonによるビジネスに役立つWebスクレイピング」(Udemyへのリンク)が発売中!
発売数9,000本突破を記念して、今だけ期間限定で87%オフの大セール中!!!

if文でelifを使った複数の条件分岐

先ほどは条件式1つと、その条件を満たさない場合に記述するelseの書き方を見てきましたが、今度は、条件式を追加する方法を確認しましょう。

 
例えば、条件式2を追加する場合は、次のように記述します。

elifの後に条件式2を書き、その後には:(コロン)を付けます。elif文に含まれる処理も、インデント(字下げ)して記述します。処理が複数行ある場合も、全てインデントします。インデントが終わると、elifの一連の処理は終わります。

 
さらにelifはいつくも増やすことができます。次のように、elifの一連の処理をいくつも追加して行くことができます。

 
 

if文でelif、elseを使った複数の条件分岐

elifやelseは、次のように組み合わせて使うこともできます。

この場合にelse以下の処理は、その上の全ての条件式(条件式1からn)が満たされない場合のみ(Falseの場合のみ)、実行されます。

 
 
elif、elseの利用方法について、いくつか例を挙げていきます。
 
変数salesに代入された数値が、それぞれ、

  • 100以上の場合、「Salesは100以上です。」
  • 100未満で50以上の場合、「salesは100未満、50以上です。」
  • 50未満で20以上の場合、「salesは50未満、20以上です。」
  • 20未満の場合、「salesは20未満です。」

と表示します。

 
salesに80を代入し実行すると1つ目のelif文の処理が実行され「salesは100未満、50以上です。」と表示されました。2つ目のelif文の処理やelse文の処理は実行されません。

salesは100未満、50以上です。

 
同じ処理に対して、今度はsalesに10を代入し実行すると、全てのif、elif文の条件はFalseになりますので、else文の処理が実行され「salesは20未満です。」と表示されます。

salesは20未満です。

 
 

動画教材紹介私(清水 義孝)が作成したコース「Pythonによるビジネスに役立つWebスクレイピング」(Udemyへのリンク)が発売中!
発売数9,000本突破を記念して、今だけ期間限定で87%オフの大セール中!!!

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

Pythonのif文は、通常は複数行に渡って記述することになりますが、一行で簡潔に記述することもできます。一行での記述方法については、次の記事をご参考ください。

 
 
関連記事です。
Pythonのif文全般のトピックについては、こちらに纏めた記事がございます。

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

 
 
 
最後に...


Pythonの学習においては、実際に様々なプログラムを書いて試していくことが非常に重要です。Pythonについて、さらに詳しく学ばれたい方は、以下の私のUdemy講座をご検討いただければ幸いです。


Pythonを用いて世界中のWebサイトから自動的にデータ収集する方法を、基礎からていねいに学ぶことができます。Pythonを初めて学ばれた方も、最初に取り組みやすい内容になっています。


>> Pythonによるビジネスに役立つWebスクレイピング
発売数9,000本突破を記念して大セール中!期間限定になりますのでお早めに。
Pythonによるビジネスに役立つWebスクレイピング(BeautifulSoup、Selenium、Requests)講座の画面

既に9,000名以上の方に受講頂き、大変好評です。またコースに満足いただけない場合でも、30日返金保証があるので安心です。

期間限定の割引クーポンは、こちらから!
>> Pythonによるビジネスに役立つWebスクレイピング
   
   





-10. 条件分岐(IF文)

Copyright© ビジPy , 2024 All Rights Reserved.