【python】じゃんけんプログラムを作成してみた!

こんにちは、ゆーとんです。

この記事では、pythonで書いたじゃんけんのコードを紹介していきたいと思います!

プログラムの手順は以下の通りです。

①0,1,2のいずれかを入力する(0:グー、1:チョキ、2:パー)

②コンピュータの手(ランダムで選ばれる)と入力した手でじゃんけん

③勝敗が決まるまで行う

以下のコードが作成したコードになります。

#じゃんけんプログラム
import random

def janken():
janken_hand={0:"グー",1:"チョキ",2:"パー"}
result=""#じゃんけんの結果を格納

while result=="" or result=="あいこ":
#0,1,2を手入力する(適切な値が入力されるまでループする)
while True:
try:
you_hand=int(input("あなたの手を入力してください(0:グー、1:チョキ、2:パー) :"))
if you_hand==0 or you_hand==1 or you_hand==2:
break;

else:
print("適切な数値(0,1,2)を入力してください")

except ValueError:
print("数字を入力してください(0:グー、1:チョキ、2:パー)")

computer_hand=random.randint(0,2)#0,1,2のいずれかを変数に代入する

print(f"あなたの手   >>>{janken_hand[you_hand]}")
print(f"コンピュータの手>>>{janken_hand[computer_hand]}")

#関数judge()を用いてじゃんけんの結果を得る
result=judge(janken_hand[computer_hand],janken_hand[you_hand])

if result=="勝ち":
print("じゃんけんの結果:あなたの勝ち!!")
elif result=="負け":
print("じゃんけんの結果:あなたの負け")
elif result=="あいこ":
print("じゃんけんの結果:あいこ ")
print("再度入力してください")

def judge(computer_hand,you_hand):
if computer_hand==you_hand:
return "あいこ"
else:
if computer_hand=="グー":
if you_hand=="チョキ":
return "負け"

elif you_hand=="パー":
return "勝ち"

elif computer_hand=="チョキ":
if you_hand=="パー":
return "負け"

elif you_hand=="グー":
return "勝ち"

else:#パーのとき
if you_hand=="グー":
return "負け"

elif you_hand=="チョキ":
return "勝ち"

janken()

コードの特徴は、以下の3点です。

①辞書janken_handを用いて、数字からじゃんけんの手(グー、チョキ、パー)へ変換している

②例外処理try exceptを用いて、適切な値が入力されるまで入力を行う

③判定用の関数judge()を自作している

以上、じゃんけんのプログラムコードを作成しました。

かなり簡単なものですが、参考になれば幸いです。

コメント

タイトルとURLをコピーしました