Я новичок в Python 3, и я не понимаю, почему я получаю тип ошибки (это предположение ряд игра для чисел между 0-100):Python 3: Traceback: TypeError
print("Please think of a number between 0 and 100!")
low = 0
high = 100
check = False
while True :
guess = (low + high)/2
print("Enter 'h' to indicate the guess is too high.\n")
print("Enter 'l' to indicate the guess is too low.\n")
print("Enter 'c' to indicate I guessed correctly.\n")
ans = input("")
if ans == "h" :
low = ans
elif ans == "l" :
high = ans
elif ans =="c" :
print("Game over. Your secret number was:{}".format(guess))
break
else :
print("Sorry, I did not understand your input.")
здесь ошибка:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
Спасибо advance.I'd очень ценю вашу помощь, я застрял в этом
Необходимо нанести полный след. Но из вашего кода: когда пользователь вводит что-либо, кроме 'c', он вызывает ошибку, потому что вы назначаете входное значение (' str' object) переменной 'low' или' high', а затем пытаетесь выполнить операцию 'int' , первый раз '+', а затем '/ 2' –
Да, вы меняете« низкий »или« высокий »на строку в первых двух частях условного выражения. Затем, когда цикл while начинается снова, он пытается использовать их как целые числа для вычисления «угадывания» снова. – Jeff
Это не очень игра; игрок не угадывает число так же, как выбирая число, основанное на последовательности 'h' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' '' ''. – chepner