IT&ガシェット情報まとめ

ガシェット好きの学生です。ブログ全然やったことないです。よろしくお願いします。

Python初心者講座 第5回:はじめてのミニアプリ|数当てゲームを作ってみる

第5回:はじめてのミニアプリ|数当てゲームを作ってみる

ここまでおつかれ。

たぶん最初の頃は、
「printって何?」みたいな状態だったと思うけど、
今は普通にifとかwhileとか見てるはず。

これ、ちゃんと進んでる証拠。

ということで今回は、今までやったことを全部使って、
**ちゃんと動く“ゲームっぽいもの”**を作る。

内容はシンプルだけど、「自分で作った感」はかなりあるやつ。


作るもの:数当てゲーム

ルールはこんな感じ。

  • コンピュータが数字を1つ決める

  • それを当てる

  • 外れたらヒントが出る

  • 当たるまで続く

シンプルだけど、ちゃんとゲーム。


とりあえず動かしてみる

細かいことはあとでやるので、まずこれコピペして動かしてみてほしい。

import random

answer = random.randint(1, 10)

while True:
    guess = int(input("1〜10の数字を当ててください: "))

    if guess == answer:
        print("当たり!")
        break
    elif guess < answer:
        print("もっと大きい")
    else:
        print("もっと小さい")

最初は「よく分からんけど動いた」くらいでOK。


ちょっとだけ中身を見る

全部細かく理解しようとするとしんどいので、
大事なところだけ軽く見る。


ランダムで数字を決めてる

import random
answer = random.randint(1, 10)

ここで「答え」を作ってる。

毎回違う数字になるから、ゲームっぽくなる。


ずっと繰り返してる

while True:

これは「無限に繰り返す」って意味。

当たるまで終わらない仕組み。


入力を受け取る

guess = int(input("1〜10の数字を当ててください: "))

ここで自分が入力した数字を受け取ってる。

int()っていうのは、「文字 → 数字」に変えるやつ。

これ忘れるとエラーになるので注意。


当たり判定

if guess == answer:

ここで「当たったかどうか」を見てる。

当たってたら…

break

これでループを終了。


実際やってみると結構楽しい

これ何回かやると分かるけど、

  • 「もっと大きい」って言われて

  • だんだん近づいていって

  • 当たる

っていう流れがちゃんとある。

たぶんここで初めて
「プログラミングってこういう感じか」ってなると思う。


少しだけ改造してみる

ここからがちょっと面白いところ。

そのままでもいいけど、少し変えるだけで一気に“自分の作品”になる。


回数制限をつける

無限にできるのもいいけど、ゲームっぽくするなら制限つけてもいい。

count = 0

while count < 5:
    count += 1

5回までにする感じ。


正解を見えるようにする(練習用)

print(answer)

最初にこれ入れると、答え見える。

デバッグ用ってやつ。


難しくする

random.randint(1, 100)

これだけで一気に難易度上がる。


正直ここまで来たらすごい

ちょっと冷静に考えると、

  • 入力受け取って

  • 条件分岐して

  • 繰り返して

  • ゲーム作ってる

普通にちゃんとしたことやってる。

最初に思ってた「プログラミング」のイメージに、
だいぶ近づいてるはず。


この講座はここで一区切り

一応ここで基本は一通り終わり。

でも、ここがゴールじゃなくてスタート。


このあと何すればいい?

よくあるやつだけど、結局これに尽きる。

「ちょっとずつ作る」

いきなりすごいもの作ろうとすると詰むので、

  • このゲームを改造する

  • 電卓作る

  • タイマー作る

このへんで十分。


最後に

たぶん途中で「わからん」ってなったと思うし、
今も全部理解してるわけじゃないと思う。

でもそれ普通。

むしろ、ちょっと分からないくらいで進むのがちょうどいい。

ここまで来てる時点で、
もう完全な初心者ではない。

あとは触って慣れるだけ。

 

気が向いたら続編作るかも