Pythonでif文やif else文などを有効活用して、条件分岐をしたい方もいるでしょう。条件分岐ができれば、ケース別に情報を分けられて便利です。条件ごとに情報を分けたい場合は、if文を正しく学びましょう。他にも、if else文やif elif文の解説もあるので、構文ごとの適切な使い方を勉強してみてください。
今回はプログラミング初心者の方のために、if else文やif elif文などの使用方法を紹介します。この記事を読めばコード例を参考にしながら、正しい書き方を覚えられるでしょう。
if文の基本的な使用方法
まずは、一般的なif文を紹介します。本来のif文は、条件式が真のときに限って処理できます。基本的な使い方とともに見ていきましょう。
if文は条件式が真のときに限り処理する
if文は、条件式が真となれば、以後のブロック内の記述文が順に実行される形式となっています。複数の文の実行を求めるなら、ブロック内にひととおり記述してください。記述文はいくつでも可能なので、好きな文の数だけif文を実行できます。
Pythonのif文は、条件式で用います。ユーザーは比較演算子や論理演算子を用いて、条件を記述するのです。変数への代入値に対し、一定の条件を付与してください。そうすれば条件を満たす文に限り、処理が実行されます。
if文は一定条件を満たすものがあるときに機能する形式です。複数の文に対する実行も可能なので、ブロック内にひととおり記述すれば、条件式が真の文がすべて処理されます。条件に当てはめたい文があれば、if文を使うとよいでしょう。
if文の基本的な使い方
if文は基本的に、以下の形で使います。
height = 118if height < 120 print(“身長120cm未満の方はご利用できません”)
heightは英語で「高さ(身長)」を意味します。上記は、遊園地のアトラクションの身長制限を示したコードです。変数のheightに118を代入した結果、if文の条件式は真なので、以後のブロック内の文が実行されました。さらに具体的な例を見ていきましょう。
height = 118print(“身長は” + str(height) + “です。”)if height < 120: print(“120cm未満の方はご利用できません。”) print(“またのご利用をお待ちしています。”)print(“ありがとうございました。\n")
変数のheightに数値を代入し、if文を実行すると、以上のとおりになります。仮に122のように、120以上の数値を代入すればif文が実行されません。以上から「120cm未満の方はご利用できません」「またのご利用をお待ちしています」という文章は表示されなくなります。120未満という条件に対して、偽になるからです。
以上のようにif文で一定の基準を示し、変数が当てはまるか判定できます。条件や変数が変われば、出力結果が変わる点に注意してください。
if else文とは
if else文は条件分岐をしたいときに使います。状況次第では、if elif文の使用が適切なので、使い分け方も覚えましょう。if else文について、以下で詳細を解説します。
条件分岐をしたいときに使用
条件分岐をしたいときは、if else文を試してください。Pythonに限らずプログラミングでは、条件分岐にif else文が役立ちます。指定条件が真なら、ユーザーの指定した処理をする一方、偽だと別処理を行うしくみです。
if else文は、プログラミングにおける基本的なテクニックです。データを作成するとき、条件に応じた分岐はよくあります。たとえば数値に関する条件は身長や年齢、価格などさまざまです。上記の条件に応じて、真偽判定が求められることもあるでしょう。
条件に合わせて処理方法を分けたい場合、if else文が欠かせません。プログラミングの仕事でも、多くの使用機会が想定されます。if else文をマスターすれば、条件に応じた処理ができ、正しい情報をスムーズに示すことができるのです。
基本的な使い方
if else文は条件式が真のときに行う処理と、偽の場合の処理を指定します。以下の例を見ていきましょう。
i = 100if i == 94 print(“correct”)else: print(“incorrect”)
上記のコードでは、出力結果として「incorrect」が出ます。i == 94は、変数iが94であるかを意味します。しかし、最初に指定されたiは100なので、94は偽になり「incorrect」と判定されました。
このようにif else文は真だけでなく、偽の場合の処理方法を指定できます。条件を満たさないものに対して、別の処理を行うのがポイントです。真と偽で処理方法が違うため、if else文は条件分岐に用いられます。
場合によってはif elif文を使ってみよう
状況次第ではif else文ではなく、if elif文の方が適切といえます。この構文を使えば、より詳細な条件分岐を追加できるからです。複数の条件式に対して、すべて真か偽だったときだけでなく、一部のみが偽だったときの処理方法を決められます。if elif文の基本的な使い方として、以下の例を見てください。
i = 100if i == 94 print(“blue”)elif i == 105 print(“yellow”)else: print(“red”)
上記の場合、出力結果はredです。変数iが94ならblue、もうひとつの条件として105であればyellowと出力するよう指示しました。一方、elseでは2つとも偽だった場合に、redと出力するよう指示しています。変数iの値が100で、94や105と異なるため、両方の条件が偽としてredが出力されました。
if else文のループ内での条件分岐
if else文は、ループ内での条件分岐にも使えます。forループやwhileループの例で、正しい使い方を見ていきましょう。
forループ内で使う場合
まずはforループ内でif else文を使った場合です。コードの書き方は以下になります。
for i in range(3): if i == 3: print(“correct”) else: print(“incorrect”)
上記の場合、以下が出力結果です。
incorrectincorrectincorrectcorrectincorrect
forループ内では、変数iの値が3ならcorrect、そうでなければincorrectと出力するように指示しました。出力結果では1行目が変数0の場合なので、1~3行目は変数が0から2、5行目は4としてincorrectと出ています。4行目は変数3なのでcorrectと示されました。
whileループ内で使う場合
whileループ内では、以下の例のようにif else文を使います。
i = 0while i <5: if i == 3: print(“correct”) else: print(“incorrect”) i = i+1
出力結果は以下のとおりです。
incorrectincorrectincorrectcorrectincorrect
上記のコードはforループと同じしくみを使っていますが、whileループを採用したため、forループとは書き方が異なります。
if文を一行で記述する方法
「三項演算子」では、if else文をたった一行で記述できます。行数を減らすことで、プログラミングがスムーズに進むため、是非実践してみましょう。
if else文の場合
if else文を一行に書き直すと、以下の形になります。
x = 14print(“Yes”) if x == 15 else print(“No”)
以上の結果「No」と出力されます。xの条件を14とした一方、変数の値として15を入れたため、数字が合わないとして偽の判定を受けました。以上から一行に書き直せば、シンプルな形で真偽判定が可能です。
elif文の場合
if elif文も一行での記述が可能です。以下で例を確かめてください。
x = 100print(“xは150未満です。”) if x < 150 elif print (“xは200以上です。”) if x >= 200 else print(“xは200未満です。”)
以上の場合「xは150未満です。」と表示されます。ちなみに変数xに190を代入した場合「xは200未満です。」が出力結果です。
elseなしのif文の場合
elseなしでも、if文を一行でまとめられます。
X = 1700if x == 1700: print(“correct”)
上記の場合、指定条件と変数xが一致しているため「correct」と表示されます。ただし以上のコードでは、別の数字を変数xに代入した場合、処理が実行されません。出力結果は空欄になります。
Pythonにおけるif else文やif elif文などのまとめ
Pythonで条件分岐をするなら、if文をマスターしましょう。応用テクニックとしてif else文やif elif文もあるので、場合に応じて使い分けてください。if文をひととおり勉強すれば、条件に応じて処理方法を分けられます。
プログラミングではさまざまな条件指定が想定されます。以上からif文の使用機会も多くなるでしょう。学習中の方はif else文やif elif文も合わせて、使い方を練習してください。
プログラミングに慣れてきたら、if文を一行で記述してもよいでしょう。使用行数を抑えられるため、画面をスッキリさせた状態で処理できます。一行による記述も含め、if文の使い方をひととおり試してみてください。