Pythonの「もしも」を操る魔法:if文を徹底解説!
Pythonの世界へようこそ!プログラミングの基礎となる重要な概念、それが「if文」です。日本語で言うと「もし~ならば」に相当し、条件によって処理を分岐させる魔法のような存在です。この記事では、初心者の方にもわかりやすく、if文の基本から応用までを丁寧に解説していきます。
if文の基本:条件によって変わる未来
if文は、ある条件が満たされた場合に、特定のコードを実行するために使われます。基本的な構造は以下の通りです。
if 条件式:
# 条件式がTrueの場合に実行されるコード
処理
if
: if文の始まりを示すキーワードです。条件式
: True(真)または False(偽)を返す式です。例えば、x > 5
やname == "Alice"
などが条件式として使えます。:
: 条件式の終わりを示すコロンを忘れずに!インデント
: if文の内部に記述するコードは、必ずインデント(通常はスペース4つ分)を下げる必要があります。インデントはPythonにおいて非常に重要で、コードの構造を定義するために使われます。処理
: 条件式がTrueの場合に実行されるコードブロックです。
例を見てみましょう。
age = 20
if age >= 18:
print("あなたは成人です。")
このコードでは、変数age
の値が18以上かどうかを判定しています。age
が20なので条件式age >= 18
はTrueとなり、「あなたは成人です。」と表示されます。もしage
が17だった場合、条件式はFalseとなり、何も表示されません。
else文:もしそうでなければ
if文だけでは、「もし~ならば、~する」という処理しか記述できません。そこで登場するのがelse
文です。else
文は、if文の条件式がFalseの場合に実行されるコードブロックを定義します。
if 条件式:
# 条件式がTrueの場合に実行されるコード
処理1
else:
# 条件式がFalseの場合に実行されるコード
処理2
例を見てみましょう。
age = 15
if age >= 18:
print("あなたは成人です。")
else:
print("あなたは未成年です。")
このコードでは、age
が15なので条件式age >= 18
はFalseとなり、else
ブロック内の「あなたは未成年です。」が表示されます。
elif文:複数の条件をチェック
さらに複雑な条件分岐を実現するために、elif
文(else ifの省略形)が用意されています。elif
文を使うと、複数の条件を順番にチェックし、最初にTrueになった条件に対応するコードブロックを実行できます。
if 条件式1:
# 条件式1がTrueの場合に実行されるコード
処理1
elif 条件式2:
# 条件式1がFalseで、条件式2がTrueの場合に実行されるコード
処理2
else:
# どの条件式もTrueでなかった場合に実行されるコード
処理3
例を見てみましょう。
score = 85
if score >= 90:
print("評価:S")
elif score >= 80:
print("評価:A")
elif score >= 70:
print("評価:B")
else:
print("評価:C")
このコードでは、score
が85なので、最初にscore >= 90
がFalse、次にscore >= 80
がTrueとなり、「評価:A」が表示されます。elif
は必要な数だけ連ねることができ、より複雑な条件分岐を記述できます。
条件式:比較演算子と論理演算子
条件式では、様々な比較演算子や論理演算子を使って、より複雑な条件を表現できます。
- 比較演算子:
==
(等しい),!=
(等しくない),>
(より大きい),<
(より小さい),>=
(以上),<=
(以下) - 論理演算子:
and
(かつ),or
(または),not
(否定)
例を見てみましょう。
age = 25
is_student = True
if age >= 18 and not is_student:
print("あなたは成人で、学生ではありません。")
else:
print("あなたは成人でないか、学生です。")
このコードでは、age
が25でis_student
がTrueなので、age >= 18
はTrue、not is_student
はFalseとなり、全体としてFalseになるため、else
ブロック内の「あなたは成人でないか、学生です。」が表示されます。
まとめ:if文をマスターしてプログラムに活力を!
if文は、プログラムの実行の流れを制御するための非常に強力なツールです。この記事で紹介した基本構文、else
文、elif
文、そして比較演算子や論理演算子を組み合わせることで、様々な条件分岐を実現し、より柔軟で高度なプログラムを作成できます。
練習問題を解いたり、実際にコードを書いて試したりすることで、if文の理解を深め、Pythonプログラミングのスキルアップに繋げていきましょう!
コラム一覧
◯for文
◯関数
◯配列
◯文字列
◯正規表現
◯ファイル入出力
◯openpyxl
◯Numpy
◯Matplotlib
◯Pandas
◯scikit-learn
◯seaborn
◯beautifulsoup
◯tkinter
◯OpenCV
◯pygame
◯メイン関数
◯自作ライブラリ
◯画像処理
◯機械学習
◯スクレイピング
◯データ分析
◯グラフ作成
◯API
◯可読性
◯デバッグ
◯例外処理
◯コメント
◯組み込み関数
◯flask
◯学び方
◯ビット演算
◯マルチスレッドプログラミング
◯参照渡し
◯pyenv
◯エディタ
◯生成AI
◯画像認識
◯Streamlit
◯lambda式
◯物理演算シミュレーション
◯命名規則
◯遺伝的アルゴリズム
◯関数型プログラミング
◯オブジェクト指向
◯ツリー図