デジタルこどもBASEのロゴ 特定非営利活動法人デジタルこどもBASE 📚 目次
第27回 Lv1 ⏱ 15〜20分

andとorで複数条件

🎯 きょうのミッション

「年齢が6才以上かつ12才以下なら小学生」のように、2つの条件を組み合わせたいときがあります。and(両方真)と or(どちらか真)で、複合条件が書けます。

🧠 できるようになること

  • and で「両方とも」の条件が書ける
  • or で「どちらか」の条件が書ける
  • 条件をつなげると複雑な判定ができることを実感する

🧰 用意するもの

  • パソコン
  • ブラウザ(Chrome / Edge / Safari)
  • インターネット接続
  • このページの「▶ このページで実行」ボタン(コードをそのまま動かせます)
  • Trinket(予備の実行サイト:https://trinket.io/python)

🖼 できあがり

年齢を入力すると「小学生(6〜12才)」かどうかを判定してくれます。and を使って2つの条件を同時に満たすかをチェックします。

📺 実行結果
年齢は? 10
小学生です

🚀 やりかた

  1. age = int(input("年齢は? ")) で年齢を受け取ります。
  2. if age >= 6 and age <= 12: と書きます。and でつなぐ。
  3. print("小学生です")。
  4. else: で「小学生ではありません」を表示。

🐍 きょうのコード

Python main.py
age = int(input("年齢は? "))

if age >= 6 and age <= 12:
    print("小学生です")
else:
    print("小学生ではありません")
▶ Trinketを開いて動かす

このページの「▶ このページで実行」でそのまま動きます。Trinketを使うときは、上のコードをコピーして左のエリアに貼り付け、Runボタン(▶)を押します。

💡 きょうのポイント

and は両方とも真のときだけ全体が真。or はどちらか1つでも真なら全体が真。日常会話の「かつ」「または」と同じ意味です。

🎮 チャレンジ

  • or を使って「土曜日または日曜日なら『お休み』」と表示しよう(曜日は文字列で)
  • 「身長が150以上 and 体重が40以上ならジェットコースターに乗れる」という判定を作ろう
  • 3つの条件を and でつなげてみよう

🔁 ふりかえり

  • and と or の違いを身近な例で説明できる?
  • age >= 6 and age <= 12 を 6 <= age <= 12 と書いてもOK(Pythonの便利機能)。試そう
  • 条件をたくさんつなげすぎると読みにくくなる。どう整理する?

👨‍👩‍👧 おうちの人・先生へ

  • 準備:なし。
  • つまずきポイント:age >= 6 and <= 12 のように age を省略してしまう。Pythonでは左右それぞれを完整な条件にするため、age >= 6 and age <= 12 と両方に変数名を書きます。
  • 声かけ例:「and はAND、or はORで、英語そのまま」と伝えるとシンプル。論理の基礎なので大事に。