-4
私はロック、ペーパー、はさみのゲームのコードを書いています。私はユーザーの勝利、損失、引分を追跡しなければなりません。変数wins、loss、およびdrawsがゼロにリセットされている問題が発生しています。同じことをするが、対応する変数を1に割り当てる関数の第2の部分がある。Pythonがカウンタを作成する
def user_choice():
print("Choice must be Rock, Paper, or Scissors.")
users_choice = input("Enter your choice here: ")
if users_choice == "Rock":
print("You chose Rock")
player_choice = "Rock"
computer_choice(player_choice)
elif users_choice == "Paper":
print("You chose Paper")
player_choice = "Paper"
computer_choice(player_choice)
elif users_choice == "Scissors":
print("You chose Scissors")
player_choice = "Scissors"
computer_choice(player_choice)
else:
print("Error: Choice must be one of the following: Rock, Paper, or Scissors")
user_choice()
def computer_choice(player_choice):
#This is the program's randomly generated number, from here on out the programm will be refered to as Computer.
computer_generated_number = random.randint(1, 3)
player_choice = player_choice
if computer_generated_number == 1:
computer_choice = "Rock"
game(player_choice , computer_choice)
elif computer_generated_number == 2:
computer_choice = "Paper"
game(player_choice , computer_choice)
elif computer_generated_number == 3:
computer_choice = "Scissors"
game(player_choice , computer_choice)
def game(player_choice , computer_choice):
wins = 0
losses = 0
draws = 0
if wins or losses or draws >= 1:
if player_choice == computer_choice:
print("It's a draw!")
user_input = input("Would you like to play again? Answer must be a yes or no. ")
draws = 1
if user_input == "Yes" or user_input == "yes":
user_choice()
elif user_input == "No" or user_input == "no":
print("You've won" , wins , "times")
print("You've lost" , losses , "times")
print("And you've come to a draw" , draws, "times")
print("Goodbye")
elif player_choice == "Rock" and computer_choice == "Scissors":
print("Rock smashes scissors!")
print("You won!")
user_input = input("Would you like to play again? Answer must be a yes or no. ")
wins = wins + 1
if user_input == "Yes" or user_input == "yes":
user_choice()
elif user_input == "No" or user_input == "no":
print("You've won" , wins , "times")
print("You've lost" , losses , "times")
print("And you've come to a draw" , draws, "times")
print("Goodbye")
elif player_choice == "Paper" and computer_choice == "Rock":
print("Paper covers rock!")
print("You won!")
user_input = input("Would you like to play again? Answer must be a yes or no. ")
wins = wins + 1
if user_input == "Yes" or user_input == "yes":
user_choice()
elif user_input == "No" or user_input == "no":
print("You've won" , wins , "times")
print("You've lost" , losses , "times")
print("And you've come to a draw" , draws, "times")
print("Goodbye")
elif player_choice == "Scissors" and computer_choice == "Paper":
print("Scissors cut paper!")
print("You won!")
user_input = input("Would you like to play again? Answer must be a yes or no. ")
wins = wins + 1
if user_input == "Yes" or user_input == "yes":
user_choice()
elif user_input == "No" or user_input == "no":
print("You've won" , wins , "times")
print("You've lost" , losses , "times")
print("And you've come to a draw" , draws, "times")
print("Goodbye")
elif player_choice == "Rock" and computer_choice == "Paper":
print("Paper covers rock!")
print("You lost")
user_input = input("Would you like to play again? Answer must be a yes or no. ")
losses = losses + 1
if user_input == "Yes" or user_input == "yes":
user_choice()
elif user_input == "No" or user_input == "no":
print("You've won" , wins , "times")
print("You've lost" , losses , "times")
print("And you've come to a draw" , draws, "times")
print("Goodbye")
elif player_choice == "Paper" and computer_choice == "Scissors":
print("Scissors cuts paper!")
print("You lost")
user_input = input("Would you like to play again? Answer must be a yes or no. ")
losses = losses + 1
if user_input == "Yes" or user_input == "yes":
user_choice()
elif user_input == "No" or user_input == "no":
print("You've won" , wins , "times")
print("You've lost" , losses , "times")
print("And you've come to a draw" , draws, "times")
print("Goodbye")
elif player_choice == "Scissors" and computer_choice == "Rock":
print("Rock smashes scissors!")
print("You lost")
user_input = input("Would you like to play again? Answer must be a yes or no. ")
losses = losses + 1
if user_input == "Yes" or user_input == "yes":
user_choice()
elif user_input == "No" or user_input == "no":
print("You've won" , wins , "times")
print("You've lost" , losses , "times")
print("And you've come to a draw" , draws, "times")
print("Goodbye")
if wins or losses or draws == 0:
if player_choice == computer_choice:
print("It's a draw!")
user_input = input("Would you like to play again? Answer must be a yes or no. ")
draws = 1
if user_input == "Yes" or user_input == "yes":
user_choice()
elif user_input == "No" or user_input == "no":
print("You've won" , wins , "times")
print("You've lost" , losses , "times")
print("And you've come to a draw" , draws, "times")
print("Goodbye")
elif player_choice == "Rock" and computer_choice == "Scissors":
print("Rock smashes scissors!")
print("You won!")
user_input = input("Would you like to play again? Answer must be a yes or no. ")
wins = 1
if user_input == "Yes" or user_input == "yes":
user_choice()
elif user_input == "No" or user_input == "no":
print("You've won" , wins , "times")
print("You've lost" , losses , "times")
print("And you've come to a draw" , draws, "times")
print("Goodbye")
elif player_choice == "Paper" and computer_choice == "Rock":
print("Paper covers rock!")
print("You won!")
user_input = input("Would you like to play again? Answer must be a yes or no. ")
wins = 1
if user_input == "Yes" or user_input == "yes":
user_choice()
elif user_input == "No" or user_input == "no":
print("You've won" , wins , "times")
print("You've lost" , losses , "times")
print("And you've come to a draw" , draws, "times")
print("Goodbye")
elif player_choice == "Scissors" and computer_choice == "Paper":
print("Scissors cut paper!")
print("You won!")
user_input = input("Would you like to play again? Answer must be a yes or no. ")
wins = 1
if user_input == "Yes" or user_input == "yes":
user_choice()
elif user_input == "No" or user_input == "no":
print("You've won" , wins , "times")
print("You've lost" , losses , "times")
print("And you've come to a draw" , draws, "times")
print("Goodbye")
elif player_choice == "Rock" and computer_choice == "Paper":
print("Paper covers rock!")
print("You lost")
user_input = input("Would you like to play again? Answer must be a yes or no. ")
losses = 1
if user_input == "Yes" or user_input == "yes":
user_choice()
elif user_input == "No" or user_input == "no":
print("You've won" , wins , "times")
print("You've lost" , losses , "times")
print("And you've come to a draw" , draws, "times")
print("Goodbye")
elif player_choice == "Paper" and computer_choice == "Scissors":
print("Scissors cuts paper!")
print("You lost")
user_input = input("Would you like to play again? Answer must be a yes or no. ")
losses = 1
if user_input == "Yes" or user_input == "yes":
user_choice()
elif user_input == "No" or user_input == "no":
print("You've won" , wins , "times")
print("You've lost" , losses , "times")
print("And you've come to a draw" , draws, "times")
print("Goodbye")
elif player_choice == "Scissors" and computer_choice == "Rock":
print("Rock smashes scissors!")
print("You lost")
user_input = input("Would you like to play again? Answer must be a yes or no. ")
losses = 1
if user_input == "Yes" or user_input == "yes":
user_choice()
elif user_input == "No" or user_input == "no":
print("You've won" , wins , "times")
print("You've lost" , losses , "times")
print("And you've come to a draw" , draws, "times")
print("Goodbye")
これをデバッグするために何をしましたか? – astidham2003
この機能を複数回実行しようとしていますか? – BenT
私はwhileステートメントを試してみましたが、初期割り当て後に変数を巡回できるかどうかを確認しようとしました –