Я создаю игру угадывания, и я создал две функции. Один для ввода пользователя, а другой - для проверки правильности ввода пользователя.Возвращаемое значение не определено
def getGuess(maxNum):
if maxNum == "10":
count=0
guess = -1
guessnum = [ ]
while guess >10 or guess<0:
try:
guess=int(input("Guess?"))
except:
print("Please enter valid input")
guesses.append(guess)
return guesses
return guess
def checkGuess(maxNum):
if maxNum == "10":
if guess>num1:
print("Too High")
elif guess<num1:
print ("Too Low")
else:
print("Correct")
print (guesses)
и основной код
if choice == "1":
count = 0
print("You have selected Easy as the level of difficulty")
maxNum= 10
num1=random.randint(0,10)
print (num1)
guess = 11
while guess != num1:
getGuess("10")
checkGuess("10")
count = count+1
print (guess)
Хотя функция возвращает пользователям угадать код всегда принимает догадку как 11. Если я не определяю догадку, он не работает. Пожалуйста помоги.
Большое спасибо за ваш ответ, это помогло мне. Я не знал, что возвращение действует как перерыв, а также сожалеет об этом, но не могли бы вы кратко рассказать мне, что делает этот код. если hasWon: print (догадки) break count = count + 1 –
Итак, если вы выиграли, он печатает все догадки, которые вы сделали, а затем выходит из цикла while, чтобы он не просил вас вводить данные. 'Count = count +' находится после оператора 'if', поэтому, если вы не выиграли, он добавляет один к' count', который я ожидаю, это количество используемых догадок. –
Привет, как сделал hasWon = checkGuess («10», догадаться, num1) этот оператор становится инструкцией, чтобы проверить, выиграл ли пользователь. Разве это не просто функция, используемая для проверки догадки (правильно ли она или неверна)? Большое вам спасибо. Извините за поздний комментарий. –