Как я могу использовать переменную 'guess' в моей функции guess () в основной функции (для i в диапазоне (1,6)? Я получаю сообщение об ошибке "guess not defined". Изначально все работало нормально без функции guess, но я хотел добавить возможность неправильного ввода от пользователя, и это заставило меня застрять. Я увидел на stackexchange, что использование global внутри функции - плохая практика, но даже с global я не знаю, как решить мою проблему. Есть ли способ изменить int (предположить), если можно получить переменную из функции? Спасибо!
import random, sys
print("Hello. What is your name?")
name = str(input())
print("Well, " + name + ", I am thinking of a number between 1 and 20.")
number = random.randint(1, 20)
def guessfunction():
print("Take a guess.")
guess = input()
for number_attempts in range(0,3):
try:
return guess
except ValueError:
print("Please enter a number in figures not as a word")
print("You didn't enter a number in figures after 3 tries, program ended")
sys.exit()
for i in range(1,6):
guessfunction()
if int(guess) != number:
if int(guess) < number:
print("Your guess is too low")
else:
print("Your guess is too high")
elif int(guess) == number:
print("Good job, " + name + "! You guessed my number in " + str(i) + " guesses")
sys.exit()
print("Nope. The number I was thinking of was " +str(number))