Python 我不知道';I don’我不知道怎么处理我的数字猜测码

Python 我不知道';I don’我不知道怎么处理我的数字猜测码,python,Python,对于Python来说有些陌生,除了while语句之后的所有内容,我都已关闭。请帮忙 我不知道这之后该怎么办 while y > x or y < x: if y == x: print ("You got it, " + Name + "!") else: if (y < x): print ("Higher!") else: print ("Lower!") break import random print("Hey, what's your nam

对于Python来说有些陌生,除了while语句之后的所有内容,我都已关闭。请帮忙

我不知道这之后该怎么办

while y > x or y < x:
 if y == x:
   print ("You got it, " + Name + "!")
else:
if (y < x):
  print ("Higher!")
else:
  print ("Lower!")
  break


import random
print("Hey, what's your name?")
Name = input("")
print ("What do you want to be the maximum number?")
maximnum = int(input(""))
print("I just thought of a number between 1 and " + str(maximnum) + ", can you guess it " + Name + "?")
y = input("")
x = random.randint(1,maximnum)
print (x)
while y > x or y < x:
if y == x:
print ("You got it, " + Name + "!")
else:
if (y < x):
  print ("Higher!")
else:
  print ("Lower!")
  break
当y>x或yx或y

它只会继续运行,不会停止,while循环的条件是
y>x或者
break
的位置似乎不正确。当
y==x
时,您可能想退出循环。请修复缩进。但是假设你这样做了,代码就会永远运行,它之所以永远运行是因为你在循环中永远不会改变
x
y
,所以如果这个条件是真的(几乎可以肯定),那么它将永远是真的。[此外,如果y==x,则循环中的
将永远不会为真。]无递增-无限循环。我将此输入到我的代码中,但无论随机数是什么,它只显示“Lower!”例如,随机数是8,我输入1作为我的猜测,它显示“Lower!”尽管它实际上不是音调,但我想到的是
input()
的输出是字符串,而不是整数。您应该使用
y=int(输入('Guess reach…')
将其转换为整数,然后将其与
x
进行比较。如果没有这一点,你应该在进入循环之前点击一个TypeError,所以这可能不是问题所在,但值得一试。这很有效!非常感谢你在这方面的帮助,我真的很感激。
while y != x:
    if (y < x):
        print ("Higher!")
    else:
      print ("Lower!")
    y = input('Guess again... ')
print ("You got it, " + Name + "!")