Я пытаюсь решить проблему «Угадания» в курсе Гарвардского CS50P (задача 4). Присвоение состоит в том, чтобы предложить пользователю по номеру x, генерировать случайное число Y в диапазоне 1-X, а затем попросить пользователя угадать Y, выходя из программы, когда предположение верно. Любой вход, который не является числом, должен воспроизводить пользователя. Это работает просто отлично в консоли, но я получаю ошибку «Время ожидания, ожидая, когда программа выходит», когда я проверяю код с помощью Check50. Я предполагаю, что проблема вызвана циклом while в функции Main () и попробована перефразировать ее несколько способов, но я все еще не мог его исправить.
Я скопировал свой код ниже, любая помощь или наконечник оценены! < /P>
Проверка50 />

game.py отклоняет уровень вне диапазона < /p>

:

game.py принимает достоверный уровень < /p>

game.py отклоняет ненужное угадание < /p>

game.py отклоняет от далекого угадания < /p>

Когда угадайте слишком большой
Game.py Выходы «Просто правильно!» Когда угадайте, верно
, временем, ожидая, когда программа, чтобы выйти

game.py Выходы «Слишком маленький!» Когда угадай слишком маленький < /p>
from random import choice
def main():
number = choice((list(range(1, get_level() + 1)))) # get random number y from range 1-x
while True: # have user guess y
try:
guess = int(input("Guess: "))
if guess > 0:
if guess < number:
print("Too small!")
elif guess > number:
print("Too large!")
elif guess == number:
print("Just right!")
break # break out of loop if guess is correct
except ValueError:
pass
def get_level():
while True:
try:
level = int(input("Level: "))
if level > 0:
return level
except ValueError:
pass
main()
Подробнее здесь:
https://stackoverflow.com/questions/731 ... am-to-exit