【 Python 】 < 基礎 > 第3回 条件分岐

目次

条件分岐 の基本構文

前章で記述してきたコードは、コード中の行が、1文ずつ順序よく処理されるものでした。この章で学ぶ 条件分岐 は、さらに複雑な処理をしたい場合に処理をコントロールする手法の一つです。

TrueとFalseによる条件判定

Pythonでさまざまな状況を表すためには、条件という概念を用います。設定した条件はTrue(正しい)、もしくはFalse(正しくない)のどちらかで判定されます。それでは早速サンプルコードを見てみましょう。

age = 26

if age >= 20:
    print("大人")
else:
    print("子供")

このような文を条件判断文と言います。ここで記述されているのは、条件判断文の中の「if文」と呼ばれるものです。if文は、条件がTrueの場合に、「:」(コロン)の次の行から続く字下げされた部分を順に処理する構文です。今回ifブロックにはprint関数によって文字列の「大人」が出力される処理が記述されています。

この字下げはインデントと呼ばれ、通常、空白4文字分下げることになっています。4字でなくても動作しますが、順に実行される行は必ず、字下げした最初の行と先頭をそろえて字下げをする必要があります。

age >= 20 の部分に着目してみましょう。1行目で定義された変数ageにはint型の26が入っていますので、26 >= 20 を判定することになり、結果はTrue(正しい)となります。その結果vscodeのターミナルには「大人」と出力がされます。

「:」(コロン)とインデントの記述し忘れに注意!

age = 8

if age >= 20:
    print("大人")
else:
    print("子供")

上記のように、age = 8 だった場合には age >= 20 という条件式がFalse(正しくない)となり、elseブロックへ処理がスキップするため、vscodeのターミナルには「子供」と出力がされます。

条件分岐 で用いられるさまざまな比較演算子

先ほどのコードで使用した「>=」などの記号は比較演算子と呼ばれ、他にも多くの種類が存在します。それぞれの比較演算子を用いてコードを書いてみましょう。

・ ==

右辺が左辺に等しかったらTrue

・ !=

右辺が左辺に等しくなかったらTrue

・ >

右辺より左辺が大きかったらTrue

・ >=

右辺より左辺が大きいか等しかったらTrue

・ <

右辺より左辺が小さかったらTrue

・ <=

右辺より左辺が小さいか等しかったらTrue

・ in

右辺に左辺が存在していればTrue

・ not in

右辺に左辺が存在しなければTrue

・ is

右辺が左辺と同一である

・ is not

右辺が左辺と同一でない

if ~ elif ~ else 構文

ifブロックとelseブロックを用いた構文を紹介しましたが、2つ以上の条件を判断させて処理するバリエーションを作ることも可能です。これを、if ~ elif ~ else 構文と呼びます。実際のコードを見てみましょう。

month = 7

if month == 12 or 1 <= month <= 2:
    print("冬")
elif 3 <= month <= 5:
    print("春")
elif 6 <= month <= 8:
    print("夏")
elif 9 <= month <= 11:
    print("秋")
else:
    print("判定不可")

上記は、int型の変数monthに格納された7を判定する条件分岐のコードです。条件判定は一番上のifブロックから行われます。

ifブロックでは、month == 12 or 1 <= month <= 2 (monthの値が12もしくは1以上2以下ならばTrue)という判定を行います。今回monthの値は7なのでFalseです。

一つ下のelifブロックでは、3 <= month <= 5 (monthの値が3以上5以下ならばTrue)という判定を行うためFalse。

次のelifブロックでは、6 <= month <= 8 (monthの値が6以上8以下ならばTrue)という判定を行うため、ここでTrueとなります。

条件分岐 のブロックは上から順に判断され、Falseならひとつ下のブロックへ下がっていくポイントに注意!

Pythonのプログラムを記述するうえで、条件分岐は非常に重要な構文です。ぜひマスターしましょう。

(Visited 55 times, 1 visits today)
よかったらシェアしてね!
  • URLをコピーしました!
  • URLをコピーしました!

この記事を書いた人

株式会社NEUGATEは、都内で企業研修や職業訓練を運営している会社です。主に、IT系の教育事業に力を入れています。
この記事は、株式会社NEUGATEの教育事業部が執筆をしています。

企業ホームページ:https://neugate.co.jp/

コメント

コメントする

目次