I am working on a very simple 'game' where the player gets 5 guesses to guess a random number.
It's not done yet but I have run into a couple of problems.
This is the code that generates a random number and allows the player to guess
Relevant code:
def GuessLoopFunc(guess):
import random
import sys
import time
sum_guesses = 0
rand_num = random.randrange(1, 21)
print(rand_num)
#This is just for test purposes to know the correct number and see what happens when I guess the correct number
while True:
if guess == rand_num:
print("You got it right!")
else:
sum_guesses += 1
if sum_guesses == 4:
guess = input("That's incorrect...final guess: ")
continue
elif sum_guesses == 5:
print("Oh no! You lost!")
while True:
replay = input("Do you want to play again: ")
if replay == "yes" or replay == "Yes":
pass #Temporary while I figure out how to loop back to very start (new random number)
elif replay == "no" or replay == "No":
print("Goodbye")
break
else:
print("I do not understand what you mean...")
continue
else:
guess = input("You got it wrong, guess again: ")
continue
As you can see by the comments I made, I want the game the return to the very start of the program if the player indicates they want to play again (so they get a new random number.
Also, for some reason, the game doesn't register when the correct answer was given and keeps on telling the player that his answer was incorrect...this is the code of the game where the above module is called:
import sys
import random
import time
from GuessLoop import GuessLoopFunc
print("Hello! Welcome to the guess the number game!")
name_player = input("Please enter your name: ")
print("Hello " + str(name_player) + "!")
play = input("Are you ready to play? ")
if play == "Yes" or play == "yes":
print("Great! Let's get started...")
elif play == "No" or play == "no":
print("Too bad...")
sys.exit()
else:
print("I do not understand your response...")
quit1 = input("Do you want to quit? ")
if quit1 == "yes" or quit1 == "Yes":
sys.exit()
elif quit1 == "no" or quit1 == "No":
print("Great! Let's get started!")
else:
print("I do not understand your response...quitting.")
sys.exit()
print("I am going to think of think of a number between 1 and 20...")
print("You will get 5 guesses to guess the number...")
time.sleep(1)
print("Okay, I have a number in mind")
guess = input("What is your guess? ")
GuessLoopFunc(guess)
time.sleep(1)
sys.exit()
Finally, when I try to run the program in Sublime Text it doesn't run further than the "Please enter your name: " part. If I fill in my name and press enter, nothing happens...but no error message displays either. So I have resorted to testing the program in the Python IDLE every time, but it's a bit tedious...anyone know what's up.
question from:
https://stackoverflow.com/questions/65857624/second-loop-game-not-working-and-sublime-text-problems 与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…