Question
Answer and Explanation
To allow a user to guess a number 5 times in Python, you can use a for
loop and a counter to limit the number of attempts. Here's how you can achieve this:
First, let's set up the scenario. The program will pick a random number, and the user will try to guess it. We'll use the random
module for this.
Here's the Python code:
import random
def guess_the_number():
number_to_guess = random.randint(1, 100) # Generate a random number between 1 and 100
attempts = 5
print("I'm thinking of a number between 1 and 100.")
for i in range(attempts):
print(f"You have {attempts - i} attempts remaining.")
try:
guess = int(input("Make a guess: "))
except ValueError:
print("Invalid input. Please enter a number.")
continue # Skip to the next iteration
if guess < number_to_guess:
print("Too low!")
elif guess > number_to_guess:
print("Too high!")
else:
print(f"Congratulations! You guessed the number {number_to_guess} in {i + 1} attempts.")
return # Exit the function
print(f"You ran out of attempts. The number was {number_to_guess}.")
guess_the_number()
Explanation:
1. Import the random
module: We need this to generate a random number.
2. Define the guess_the_number()
function: This function encapsulates the game logic.
3. Generate a random number: number_to_guess = random.randint(1, 100)
generates a random integer between 1 and 100 (inclusive).
4. Set the number of attempts: attempts = 5
initializes the number of allowed guesses.
5. Iterate through the attempts: A for
loop runs 5 times, giving the user 5 chances to guess.
6. Get user input: Inside the loop, the program prompts the user to enter their guess.
7. Handle invalid input: A try-except
block handles potential ValueError
exceptions if the user enters non-numeric input.
8. Check the guess: The program checks if the guess is too low, too high, or correct, providing appropriate feedback.
9. Provide feedback and exit if correct: If the guess is correct, the program congratulates the user and exits the function using return
.
10. Handle running out of attempts: If the loop completes without a correct guess, the program informs the user that they ran out of attempts and reveals the correct number.
This code provides a complete solution to allow a user to guess a number 5 times in Python, including input validation and clear feedback.