月ノ書

Pythonの条件分岐(if文)をやさしく解説|初心者向けに書き方と考え方を整理

この記事でわかること
  • 条件分岐とは何か
  • Pythonのif文の基本的な書き方
  • else・elifの使い方
  • 比較演算子や論理演算子との関係
  • 条件分岐でよくあるミスと考え方

条件分岐とは

条件分岐とは、ある条件によって処理を分けることです

たとえば

こういった「もし〇〇なら、△△する」という考え方を、プログラムで表現するのが条件分岐です

Pythonでは、主に if文 を使って条件分岐を行います

if文の基本構文

Pythonのif文は、とても読みやすい形をしています

if 条件:
    実行する処理

条件の部分には、結果が True または False になる式を書きます

age = 20

if age >= 18:
    print("成人です")

条件が True のときだけ、インデントされた処理が実行されます

インデントの重要性

Pythonでは、インデントが処理の範囲を表します

if age >= 18:
    print("成人です")
    print("お酒が飲めます")

この場合、どちらも条件を満たしたときに実行されます

インデントがずれると、まったく違う意味になるため、ここは特に注意が必要です

elseを使った分岐

条件に当てはまらなかった場合の処理は、else を使います

age = 15

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

ifとelseは必ずセットで考えると分かりやすいです

elifで条件を増やす

条件が複数ある場合は、elif を使います

score = 75

if score >= 80:
    print("とても良い成績です")
elif score >= 60:
    print("合格です")
else:
    print("不合格です")

上から順番に条件が判定され、最初に当てはまったものだけが実行されます

比較演算子・論理演算子との組み合わせ

条件には、前回学んだ演算子を組み合わせて使えます

age = 20
is_student = True

if age >= 18 and is_student:
    print("学生向け割引が使えます")

論理演算子を使うことで、現実に近い条件分岐が書けるようになります

よくある注意点

等しいかどうかの比較

代入と比較を間違えやすいポイントです

if x == 10:
    print("10です")

ここは初心者がつまずきやすい部分なので、意識して使い分けることが大切です

inputと型の問題

age = input("年齢を入力してください: ")

if age >= 18:
    print("成人です")

これはエラーになります
input は文字列を返すため、数値として比較できません

age = int(input("年齢を入力してください: "))

型変換を行うことで、正しく比較できます

条件分岐は考え方が大事

条件分岐は、文法そのものよりも
「どんな条件で、どんな処理をしたいか」を整理することが重要です

最初は紙に

を書き出してからコードにすると、かなり書きやすくなります

まとめ

ここまで来たら、Pythonで「考えて判断するプログラム」が書けるようになっています

学習進捗