-1
Я только начинаю на python, и мне интересно, почему мои переменные догадки не определены. Я чувствую, что это проблема с отступом, но как только я изменяю отступ, я обычно сталкиваюсь с синтаксической ошибкой, любая помощь в понимании этой проблемы была бы весьма признательна.NameError: догадки не определены
import random
def game():
guesses = []
secret_num = random.randint(1, 10)
while len(guesses) < 5:
try:
guess = int(input("Guess a number between 1 and 10 "))
except ValueError:
print("{} isn't a number!".format(guess))
else:
if guess == secret_num:
print("You got it! My number was {}".format(secret_num))
break
elif guess < secret_num:
print("My number is higher than {}".format(guess))
else:
print("My number is lower tha {}".format(guess))
guesses.append(guess)
else:
print("You didn't get it my secret number was {}".format(secret_num))
play_again = input("Do you want to play again? Y/N")
if play_again.lower() != 'n':
game()
else:
print("Bye thanks for playing!")
indention my friend – tinySandy
Все, что находится внутри функциональной игры(), должно быть постоянно отступом под этой функцией. Ваш цикл while существует вне этой функции, и угадывает только область видимости внутри функции. –