Skip to content

5. 条件分岐(if 文)

Python プログラミングにおいて、条件分岐は重要な要素です。この章では、条件分岐の基本であるif文について学びます。if文を使うことで、プログラムに様々な条件に基づく動作をさせることができます。

5.1 基本構文

Python のif文の基本構造は以下の通りです:

if 条件式:
    # 条件式がTrueのときに実行される処理

例:

temperature = 25

if temperature > 20:
    print("今日は暖かいです!")

上記のコードでは、temperatureが 20 より大きい場合に「今日は暖かいです!」と表示されます。

5.2 if-else 文

if文の条件が満たされない場合の処理を記述したいときには、elseを使います。

if 条件式:
    # 条件式がTrueのときに実行される処理
else:
    # 条件式がFalseのときに実行される処理

例:

temperature = 15

if temperature > 20:
    print("今日は暖かいです!")
else:
    print("今日は少し寒いです。")

temperatureが 20 以下であるため、「今日は少し寒いです。」と表示されます。

5.3 if-elif-else 文

複数の条件を設定したい場合はelif(else if の略)を使用します。

if 条件式1:
    # 条件式1がTrueのときに実行される処理
elif 条件式2:
    # 条件式1がFalseで、条件式2がTrueのときに実行される処理
else:
    # 条件式1と条件式2がどちらもFalseのときに実行される処理

例:

temperature = 10

if temperature > 30:
    print("今日はとても暑いです!")
elif temperature > 20:
    print("今日は暖かいです!")
elif temperature > 10:
    print("今日は涼しいです。")
else:
    print("今日は寒いです。")

このコードはtemperatureの値に応じて、異なるメッセージを表示します。この場合、「今日は寒いです。」と表示されます。

5.4 複数の条件を使った if 文

複数の条件を組み合わせる場合には、論理演算子andorを使用します。

例:

day_temperature = 25
night_temperature = 15

if day_temperature > 20 and night_temperature > 10:
    print("昼も夜も快適な気温です。")
elif day_temperature > 20 or night_temperature > 10:
    print("昼か夜のどちらかは快適な気温です。")
else:
    print("少し寒いかもしれません。")

この例では、day_temperaturenight_temperatureの値に応じて、異なるメッセージが表示されます。

Python における条件分岐は複雑なプログラムを作成するのに役立ちますので、たくさん練習をしてみてください。

演習問題

演習 1: 基本的な if 文

変数 score = 85 を定義し、スコアが60以上なら「合格です」と表示するプログラムを作成してください。

解答例
score = 85

if score >= 60:
    print("合格です")
# 出力: 合格です

演習 2: if-else 文

変数 age = 17 を定義し、年齢が18歳以上なら「成人です」、18歳未満なら「未成年です」と表示するプログラムを作成してください。

解答例
age = 17

if age >= 18:
    print("成人です")
else:
    print("未成年です")
# 出力: 未成年です

演習 3: if-elif-else 文

変数 temperature = 28 を定義し、以下の条件で異なるメッセージを表示してください。 - 30度以上: 「とても暑いです」 - 20度以上30度未満: 「快適です」 - 10度以上20度未満: 「涼しいです」 - 10度未満: 「寒いです」

解答例
temperature = 28

if temperature >= 30:
    print("とても暑いです")
elif temperature >= 20:
    print("快適です")
elif temperature >= 10:
    print("涼しいです")
else:
    print("寒いです")
# 出力: 快適です

演習 4: 複数条件の判定

変数 score = 75attendance = 90 を定義し、以下の条件で判定してください。 - スコアが80以上かつ出席率が80以上: 「優秀です」 - スコアが60以上かつ出席率が70以上: 「合格です」 - それ以外: 「不合格です」

解答例
score = 75
attendance = 90

if score >= 80 and attendance >= 80:
    print("優秀です")
elif score >= 60 and attendance >= 70:
    print("合格です")
else:
    print("不合格です")
# 出力: 合格です

演習 5: 成績判定プログラム

変数 score = 88 を定義し、以下の基準で成績を判定するプログラムを作成してください。 - 90以上: "A" - 80以上90未満: "B" - 70以上80未満: "C" - 60以上70未満: "D" - 60未満: "F"

解答例
score = 88

if score >= 90:
    grade = "A"
elif score >= 80:
    grade = "B"
elif score >= 70:
    grade = "C"
elif score >= 60:
    grade = "D"
else:
    grade = "F"

print(f"あなたの成績は {grade} です")
# 出力: あなたの成績は B です