今日はpythonでインタラクティブな推測ゲームを作成します。
これは、コンピュータが1から10の間の乱数を生成し、ユーザーが5回の試行でそれを推測する簡単な推測ゲームになります。
ユーザーの推測に基づいて、コンピュータは数が高いか低いかにかかわらず、様々なヒントを与えます。 ユーザーの推測が数字と一致すると、コンピュータは試行回数とともに答えを印刷します。
これは、ゲームがアクションでどのように見えるかです,
Hello, What's your name?Abhijeetokay! Abhijeet I am Guessing a number between 1 and 10:2Your guess is too low4Your guess is too low6You guessed the number in 3 tries!
この記事では、Pythonでこのインタラクティブな推測ゲームを作成する各ステップをご案内します。
さて、お気に入りのテキストエディタを開き、コーディングを開始します。
まず、テキストエディタからgame.py
という名前の新しいファイルを作成します。
乱数を生成するには、random
という名前のPythonモジュールを使用してプログラムでこのモジュールを使用します。
import random
number = random.randint(1, 10)
ここで、ユーザーに名前を入力してplayer_name
という名前の変数に格納するように求めます。
player_name = input("Hello, What's your name?")
次のステップでは、number_of_guesses
という名前の変数を作成し、それに0を割り当てます。 後でwhileループの各反復でこの値を増やします。
最後に、whileループを構築する前に、プレイヤー名を含む文字列を出力します。
print('okay! '+ player_name+ ' I am Guessing a number between 1 and 10:')
今度はwhileループを設計しましょう。
while number_of_guesses < 5: guess = int(input()) number_of_guesses += 1 if guess < number: print('Your guess is too low') if guess > number: print('Your guess is too high') if guess == number: break
最初の行では、whileループの制御式を定義しています。 私たちのゲームは、すでにnumber_of_guesses variable
を0に割り当てているため、ユーザーに5回の数を推測しようとすると、5未満になります。
ループ内では、ユーザーからの入力を取得し、それをguess変数に格納しています。 しかし、ユーザーから取得しているユーザー入力はstringオブジェクトであり、それに対して数学的演算を実行するには、まずPythonの組み込みのint()メソッドで実行で
次の行では、number_of_guesses
変数の値を1ずつインクリメントしています。
その下には3つの条件文があります。
- 最初のif文では、推測が生成された数よりも小さいかどうかを比較していますこの文がtrueと評価された場合、対応する推測を出力します。
- 同様に、推測が生成された数よりも大きいかどうかをチェックしています。
- 最後のif文にはbreakキーワードがあり、ループを完全に終了させるため、推測が生成された数値と等しい場合、ループは終了されます。
whileループの下に、条件文の別のペアを追加する必要があります,
if guess == number: print('You guessed the number in ' + str(number_of_guesses) + ' tries!')else: print('You did not guess the number, The number was ' + str(number))
ここでは、ユーザーが数字を推測したかどうかを最初に確認しています。 彼らがした場合、私たちは試みの数と一緒に彼らのためのメッセージを印刷します。
プレイヤーが最後に数字を推測できなかった場合、メッセージと一緒に数字を印刷します。
あなたが私たちをフォローしているなら、これはあなたのプログラムがどのように見えるかです:
import randomnumber = random.randint(1, 10)player_name = input("Hello, What's your name?")number_of_guesses = 0print('okay! '+ player_name+ ' I am Guessing a number between 1 and 10:')while number_of_guesses < 5: guess = int(input()) number_of_guesses += 1 if guess < number: print('Your guess is too low') if guess > number: print('Your guess is too high') if guess == number: breakif guess == number: print('You guessed the number in ' + str(number_of_guesses) + ' tries!')else: print('You did not guess the number, The number was ' + str(number))
今のは、私たちのゲームを実行してみましょう!
ゲームを実行するには、端末python game.py
にこれを入力し、Enterキーを押します。
これはそれでした、あなたがどこかで立ち往生した場合、コードフォームGithub repo