みなさんこんにちは!Kotonoです。
今回はPythonにおけるif else文の基本的な使い方について、やさしく解説していきたいと思います。
この記事では
・if else文とは
・if else文の基本的な使い方
といった基本的な内容から
・elifの使い方
・複雑な条件式を書く方法
・ループ内での条件分岐
といった発展的な内容に関してもわかりやすく解説していきたいと思います。
※ この記事のコードはPython 3.7で動作確認しました。
なお、Pythonの記事については、こちらにまとめています。
If else文とは
みなさんは if else文を使用した事はありますか?
そもそも、if else文が何か知っていますか?
if else文はプログラムの中で「条件分岐」を行いたい時に使用する構文です。
指定した条件がTrueであればある処理を、Falseあればまた別の処理を行うことが出来るものです。
if else文はPythonに限らず、プログラミング全般の基礎なのでぜひしっかりとマスターしましょう。
If else文の基本的な使い方
では実際に、if else文を使ってみましょう。
基本的な構文は
if 指定した条件式 : 条件式がTrueの場合行う処理 else : 条件式がFalseの場合行う処理
となります。
では、実際に使用してみましょう。
以下のコードをご覧ください。
i = 10 if i == 5: print("Hello") else: print("World")
出力結果は以下の通りです。
World
i == 5 という条件式の意味は「変数 i は 5であるか否か」になります。
すなわち上のコードは、変数 i の値が5であれば文字列Helloを、そうでなければ文字列Worldを出力させたものです。
実際、変数 i の値は10なので、Worldのほうが出力されました。
elifの使い方
elifを使うとif else文内に更なる条件分岐を追加することが出来るので、便利です。
基本的な構文は以下の通りです。
if 条件式1: 条件式1がTrueのときに行う処理 elif 条件式2: 条件式1はFalseだが、条件式2がTrueのときに行う処理 else: 条件式1、2ともFalseのときに行う処理
では実際にelifを使用してみましょう。
i = 10 if i == 5: print("Hello") elif i == 10: print("Goodbye") else: print("World")
出力結果は以下の通りです。
Goodbye
上のコードでは、変数 i の値が5であれば文字列Helloを、変数 i の値が10であれば別の文字列Goodbyeを、5でも10でもなければ、文字列Worldを出力させたものです。
実際、変数 i の値は10なので、Goodbye という文字列が出力されました。
複雑な条件式を書く方法
今まで紹介してきた条件式は「==」を使用した簡単なものばかりでした。
条件式には「==」のみではなく「>」 、「<」や「 !=」を使い、またそれらをandやorなどを使用し組合す事が出来るのです。
andやorを使ってみよう
if or文は、条件式に提示した二つ以上の条件のひとつでもTrueであれば、指定した処理が実行される仕組みになっています。
反対にif and文は、二つ以上の条件のどれもが成立しなければいけません。全ての条件がTrueであった場合のみ、指定した処理が実行される仕組みになっています。
andやorなどの「論理演算子」の意味や、それらの使い方などの詳しい説明は以下のリンクを参照してください。
ループ内での条件分岐
これまでは基本的なif else文の使い方をご紹介してきました。
しかし、if else文はループ内などにも大変活躍します。
では、forループ、whileループのどちらでもif else文を使用してみましょう。
forループ内にif else文を入れてみよう
forループ内でif else文を使うには、以下のようにコードを書きます。
for i in range(5): if i == 3: print("Hello, I am 3") else : print("I am not 3!")
出力結果は以下の通りです。
I am not 3 I am not 3 I am not 3 Hello, I am 3 I am not 3
上のコードでは、forループ内に「変数 i の値が3であればHello, I am 3と出力、そうでなければI am not 3! と出力する」というif else文を入れてみました。
実際、変数 i が0から2、そして4の場合はI am not 3と表示されました。
Hello, I am 3と表示されたのは、変数 i の値が3のときのみでした。
whileループ内にif else文を入れてみよう
では、whileループ内でif else文を使用した例をご覧ください。
i = 0 while i < 5 : if i == 3: print("Hello, I am 3") else : print("I am not 3!") i = i+1
出力結果は以下の通りです。
I am not 3! I am not 3! I am not 3! Hello, I am 3 I am not 3!
上のコードは、仕組みは先ほどのものと同じですが、forループの代わりにwhileループを使用しました。
まとめ
今回は、Pythonにおける基本的なif else文の使い方をご紹介しました。
覚えておきたいポイントは
・if else文はプログラミングの基礎!
・ループ内でのif else文は頻出するので覚えておこう
・複雑な条件もandやorを使って簡単に書こう
こんな感じですね。
では、みなさんもこの記事を通してif else文についての知識を増やしていってくださいね。