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

パスワードチェックを作ろう

🎯 きょうのミッション

決めた合言葉と入力を比べて、正解なら「ログイン成功」、違ったら「拒否」と表示するパスワードチェックプログラムを作ります。文字列でも == が使えます。

🧠 できるようになること

  • 文字列を == で比較できる
  • ログイン風プログラムが書ける
  • 大文字・小文字も区別されることを知る

🧰 用意するもの

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

🖼 できあがり

合言葉を聞かれて、正しい合言葉を打つと「ログイン成功」、違うと「拒否」と表示されます。秘密基地のドアみたいなプログラム。

📺 実行結果
合言葉: python
✅ ログイン成功!ようこそPythonラボへ。

🚀 やりかた

  1. password = "python" でプログラム側の正解を決めます。
  2. guess = input("合言葉: ") で入力を受け取ります。
  3. if guess == password: で比較します。
  4. 成功と失敗のメッセージをそれぞれ表示します。

🐍 きょうのコード

Python main.py
password = "python"

guess = input("合言葉: ")

if guess == password:
    print("✅ ログイン成功!ようこそPythonラボへ。")
else:
    print("❌ 拒否:合言葉がちがいます。")
▶ Trinketを開いて動かす

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

💡 きょうのポイント

文字列も == で比較できます。ただし、大文字と小文字は別ものとして扱われます。"Python" と "python" は違う文字列です。

🎮 チャレンジ

  • 合言葉を3つ用意して、どれかに当たればOKにしよう(or を使う)
  • guess.lower() を使うと大文字小文字を無視できる。試そう
  • 「ヒント:パイソン」のような失敗時のヒントを追加しよう

🔁 ふりかえり

  • "python" と "Python" は同じ?プログラムでは?
  • なぜ実際のシステムは大文字小文字を区別するものとしないものがある?
  • もし秘密基地を作るなら、合言葉はどんな仕組みにする?

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

  • 準備:なし。
  • つまずきポイント:guess == password の == を = 1つにしてしまう(代入になりエラー)。
  • 声かけ例:「実際のサイトもこの仕組みでログインしてる」と伝えると親近感を持ちます。「ハッシュ化」など発展概念は中級で扱う、と予告しておくと興味につながります。