2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

python-100days-day08-if.png

プログラミングの本質は「データをどう扱うか」にあります。
ショッピングカートの商品一覧、SNSの友達リスト、音楽プレイリストなど
私たちが日々使うアプリは、すべて「複数のデータを整理・管理する仕組み」で成り立っています。

Pythonでは、その中核となるのが「リスト(list)」です。
最も基本的でありながら、最も頻繁に使われるデータ構造のひとつ。

今日、学ぶ「リスト」操作をマスターすれば、データ管理の効率がぐんと上がり、プログラミングが一気に楽しくなります😊
(15~20分で読了 ⭐⭐)

🎯 今日の学習目標

  1. if文とは何かを理解する
  2. if-elseで二者択一を実装する
  3. if-elif-elseで複数条件を処理する
  4. 比較演算子で条件を作る
  5. 論理演算子で複雑な条件を作る
  6. ネストしたifとin演算子を活用する

📚 前提知識


🎯 学習目標 1: if文とは何かを理解する

一言で説明

if文 = 条件に応じて異なる動作をする

「もし〜なら...をする」をコードで表現する方法です。

実生活の例え

天気が雨なら → 傘を持っていく
そうでなければ → そのまま出かける

年齢が20歳以上なら → "成人です"
そうでなければ       → "未成年です"

基本if文

文法

if 条件:
    実行するコード

💡 重要: コロン(:)とインデント(4つのスペースまたはTab)が必須!

初めてのif文を作成

age = 20

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

出力:

成人です

条件が偽の場合は?

age = 15

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

print("プログラム終了")

出力:

プログラム終了

💡 条件が偽の場合、if内のコードは実行されません!

🎯 学習目標 2: if-elseで二者択一を実装する

「そうでなければ」を表現する

age = 15

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

出力:

未成年です

実習例

# 偶数/奇数の判別
number = 7

if number % 2 == 0:
    print(f"{number}は偶数です")
else:
    print(f"{number}は奇数です")

出力:

7は奇数です

🎯 学習目標 3: if-elif-elseで複数条件を処理する

複数の条件を処理する

score = 85

if score >= 90:
    print("Aグレード")
elif score >= 80:
    print("Bグレード")
elif score >= 70:
    print("Cグレード")
else:
    print("Dグレード")

出力:

Bグレード

💡 elif = else if (そうでなくもし〜なら)

季節判別の例

month = 7

if month >= 3 and month <= 5:
    print("春です")
elif month >= 6 and month <= 8:
    print("夏です")
elif month >= 9 and month <= 11:
    print("秋です")
else:
    print("冬です")

出力:

夏です

🎯 学習目標 4: 比較演算子で条件を作る

比較演算子の種類

a = 10
b = 20

print(a == b)  # False (等しい)
print(a != b)  # True  (等しくない)
print(a > b)   # False (大きい)
print(a < b)   # True  (小さい)
print(a >= b)  # False (以上)
print(a <= b)  # True  (以下)

文字列の比較

name = "山田太郎"

if name == "山田太郎":
    print("名前が一致します")

if name != "佐藤花子":
    print("別の人です")

出力:

名前が一致します
別の人です

🎯 学習目標 5: 論理演算子で複雑な条件を作る

and (かつ)

両方が真でなければならない

age = 25
has_license = True

if age >= 18 and has_license:
    print("運転できます")

出力:

運転できます

or (または)

一つでも真なら真

is_weekend = True
is_holiday = False

if is_weekend or is_holiday:
    print("休日です")

出力:

休日です

not (否定)

真/偽を反転

is_raining = False

if not is_raining:
    print("傘は必要ありません")

出力:

傘は必要ありません

🎯 学習目標 6: ネストしたifとin演算子を活用する

ネストしたif文

if内にifを入れる

age = 25
has_ticket = True

if age >= 18:
    if has_ticket:
        print("入場可能です")
    else:
        print("チケットが必要です")
else:
    print("未成年者は入場不可")

出力:

入場可能です

より簡潔に (andを使用)

age = 25
has_ticket = True

if age >= 18 and has_ticket:
    print("入場可能です")
elif age >= 18:
    print("チケットが必要です")
else:
    print("未成年者は入場不可")

in演算子 - 含まれているか確認

リストに含まれているか

fruits = ["りんご", "バナナ", "ぶどう"]

if "りんご" in fruits:
    print("りんごがあります")

if "いちご" not in fruits:
    print("いちごがありません")

出力:

りんごがあります
いちごがありません

文字列に含まれているか

text = "Pythonは楽しいです"

if "Python" in text:
    print("Pythonという単語があります")

if "難しい" not in text:
    print("'難しい'という単語がありません")

出力:

Pythonという単語があります
'難しい'という単語がありません

💻 実習例題

例題1: ログインシステム

username = "admin"
password = "1234"

input_user = "admin"
input_pass = "1234"

if input_user == username and input_pass == password:
    print("ログイン成功!")
else:
    print("IDまたはパスワードが間違っています")

出力:

ログイン成功!

例題2: BMI計算と判定

height = 1.75  # メートル
weight = 70    # キログラム

bmi = weight / (height ** 2)

if bmi < 18.5:
    print("低体重")
elif bmi < 23:
    print("正常")
elif bmi < 25:
    print("過体重")
else:
    print("肥満")

print(f"あなたのBMI: {bmi:.1f}")

出力:

正常
あなたのBMI: 22.9

例題3: 割引計算機

price = 50000
is_member = True
quantity = 3

# 会員割引10%
if is_member:
    price = price * 0.9

# 3個以上購入時追加5%割引
if quantity >= 3:
    price = price * 0.95

total = price * quantity

print(f"総支払い金額: {total:.0f}")

出力:

総支払い金額: 128250円

💡 実践のコツと注意点

ポイント 1: インデント必須

# ❌ 間違った例 (インデントなし)
if age >= 18:
print("成人です")  # IndentationError!

# ✅ 正しい例 (4つのスペースまたはTab)
if age >= 18:
    print("成人です")

ポイント 2: コロン(:)必須

# ❌ 間違った例
if age >= 18
    print("成人です")  # SyntaxError!

# ✅ 正しい例
if age >= 18:
    print("成人です")

ポイント 3: 代入(=) vs 比較(==)

# ❌ 間違った例 (代入)
if age = 18:  # SyntaxError!
    print("18歳です")

# ✅ 正しい例 (比較)
if age == 18:
    print("18歳です")

ポイント 4: if vs elifの違い

症状:

score = 95

if score >= 60:
    print("合格")
if score >= 90:
    print("優秀")

出力:

合格
優秀

問題: 両方の条件が実行される

解決:

score = 95

if score >= 90:
    print("優秀")
elif score >= 60:
    print("合格")

出力:

優秀

ポイント 5: Boolean変数は簡潔に

複雑なコード:

if age >= 18 and has_ticket == True and is_open == True:
    print("入場可能")

簡潔に:

# Boolean変数はそれ自体が条件
if age >= 18 and has_ticket and is_open:
    print("入場可能")

ポイント 6: in演算子で簡潔に

# ❌ 複雑な方法
if fruit == "りんご" or fruit == "バナナ" or fruit == "ぶどう":
    print("果物です")

# ✅ 簡潔な方法
if fruit in ["りんご", "バナナ", "ぶどう"]:
    print("果物です")

🧪 練習問題

問題1: 絶対値を求める

数値の絶対値をif文で求めてください。
(絶対値 = 負の数なら正の数に、正の数ならそのまま)

💡 ヒント

数値が0より小さければ-1を掛けてください!

✅ 解答
number = -5

if number < 0:
    absolute = number * -1
else:
    absolute = number

print(f"{number}の絶対値: {absolute}")
# -5の絶対値: 5

問題2: 閏年判別

年度が閏年かどうか判別してください。

  • 4で割り切れれば閏年
  • ただし、100で割り切れれば平年
  • ただし、400で割り切れれば閏年
💡 ヒント

複数の条件をandとorで繋げてください!

✅ 解答
year = 2024

if (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0):
    print(f"{year}年は閏年です")
else:
    print(f"{year}年は平年です")

問題3: じゃんけんゲーム

コンピュータとユーザーの選択を比較して勝敗を判定してください。

✅ 解答
user = "グー"
computer = "パー"

if user == computer:
    print("引き分け!")
elif user == "グー" and computer == "パー":
    print("コンピュータ勝利!")
elif user == "チョキ" and computer == "グー":
    print("コンピュータ勝利!")
elif user == "パー" and computer == "チョキ":
    print("コンピュータ勝利!")
else:
    print("ユーザー勝利!")

📝 今日学んだこと

  1. if文: 条件が真の時だけ実行
  2. if-else: 真/偽に応じて異なる実行
  3. if-elif-else: 複数の条件を処理
  4. 比較演算子: ==、!=、>、<、>=、<=
  5. 論理演算子: and、or、not
  6. in演算子: 含まれているか確認

🔗 関連資料

📚 前回の学習

Day 7: リストを扱う

前回はリストを作成して使用する方法を学びました!

📚 次回の学習

Day 9: ループ文for⭐⭐(準備中!)

次回は同じ作業を繰り返すfor文を学びます!


「遅いと思った時が一番早い時期です!」 🚀

Day 8/100 | Phase 1: Pythonを始める | #100DaysOfPython

2
2
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
2

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?