こんにちは、Pythonを用いてじゃんけんゲームを簡単に作ってみたいと思います。ほとんど同じですが2パターン用意しましたのでコピペして実際に遊んでみてもらえたら幸いです。
じゃんけんゲームの作成方法について解説します。じゃんけんゲームは、ユーザーが手を選択し、コンピュータがランダムに手を選択するというシンプルなゲームです。Pythonでは、if文やwhile文、乱数などを組み合わせることで実装できます。
1つ目のパターン
Pythonでじゃんけんゲームを作成するための1つ目のコード例です
import random
print("じゃんけんスタート!")
player_hand = int(input("出す手を数値で入力(0: グー, 1: チョキ, 2: パー) :"))
if player_hand < 0 or player_hand > 2:
print("0~2の数値を入力してください")
exit()
computer_hand = random.randint(0,2)
janken = ["グー", "チョキ", "パー"]
print("あなたの出した手は " + janken[player_hand])
print("コンピュータの出した手は " + janken[computer_hand])
if player_hand == computer_hand:
print("あいこ")
elif (player_hand == 0 and computer_hand == 1) or (player_hand == 1 and computer_hand == 2) or (player_hand == 2 and computer_hand == 0):
print("あなたの勝ち!")
else:
グー・チョキ・パーの数値入力、ランダムなコンピュータの手、結果判定の処理を追加しています。じゃんけんのルールをプログラムで表現する良い練習になりますね。
2つ目のパターン
Pythonでじゃんけんゲームを作成するための2つ目のコード例です
import random
hands = ['グー', 'チョキ', 'パー']
while True:
try:
user_hand = int(input('グー(0), チョキ(1), パー(2): '))
if user_hand < 0 or user_hand > 2:
raise ValueError
break
except ValueError:
print('0〜2の整数を入力してください')
computer_hand = random.randint(0, 2)
print(f'あなた: {hands[user_hand]}, コンピュータ: {hands[computer_hand]}')
if user_hand == computer_hand:
print('あいこ')
elif (user_hand - computer_hand + 3) % 3 == 1:
print('負け')
else:
print('勝ち')
こちらはimport文でrandomモジュールをインポートしています。次にじゃんけんの手を表すリストhandsを定義しています。while Trueで無限ループを作り、じゃんけんを繰り返しプレイできるようにしています。try except文でユーザー入力をチェックし、0~2の整数でない場合はValueErrorを発生させて再入力を促しています。computer_handはrandom.randintで0~2のランダムな値を生成しています。print文でユーザーの手とコンピュータの手を表示しています。
if文であいこ、勝ち、負けを判定しています。あいこはuser_handとcomputer_handが一致する場合。勝ちは (user_hand – computer_hand + 3) % 3 == 1 を満たす場合。負けはそれ以外の場合です。
このように、じゃんけんの簡単なゲームロジックを実装しています。
whileループにより繰り返しプレイでき、randomモジュールを利用してコンピュータのランダムな手を生成している点がポイントになります!