Хорошо, поэтому я не уверен, как работает ваша система операторов if и while, но я знаю, что вы неправильно используете функцию ввода.
Если вы хотите проверить, что вход равен a thing
, вы должны сделать: if input('>>> ') == 'a thing'
Это выведет >>>
, пользователь может ввести свой ответ, и он вернет true, если он равен a thing
.
Я думаю, я знаю, что это делает, но я не уверен. В конце этого я включу то, что сделал бы, чтобы сделать это.
if x==y:
print(x, "is correct! Would you like to try again? Y/N")
if input("Y"):
print("Too bad! This game isn't finished yet!")
exit()
if input("N"):
print("Good! This game isn't finished yet!")
exit()
while True:
if x<y:
print("Too low. Try again.")
int(input())
if x>y:
print("Too high. Try again.")
int(input())
Я думаю, что вы пытаетесь проверить, может ли пользователь угадать это за один раз, а затем сказать им, является ли его догадка слишком высокой или слишком низкой при любых следующих догадках.
Я бы сделал это так:
import random
print('guess a number game (1-100 range)')
y = random.randint(1, 101)
x = int(input('>>> '))
if x == y:
print('yay, you got it first try')
exit()
else:
print('nope')
while x != y:
x = int(input('>>> '))
if x < y:
print('Too low!')
elif x > y:
print('Too high!')
elif x == y:
print('E P I C')
exit()
Вот пример вывода:
guess a number game (1-100 range)
>>> 48
nope
>>> 50
Too high!
>>> 25
Too low!
>>> 35
Too low!
>>> 45
Too high!
>>> 40
Too low!
>>> 44
E P I C
Я давно не был здесь (хаха), так что это может быть не лучшим ответом. Надеюсь, это поможет, хотя!