循环未在Python中退出

2024-05-13 07:57:10 发布

您现在位置:Python中文网/ 问答频道 /正文

我试图用Python编写一个简单的程序,但是当我的number等于number时,else语句会不断重复。救命

print('Tell me your name Ramesh')
import random
name=input()
print('Howdy, '+name)
print('Guess my number which is in between 1 to 20')
number=input()
mynumber = random.randint(1, 20)
count = 0
while(mynumber!=number):
    if (int(number) > mynumber):
        print('Howdy, Your number is too high. Plz renter')
        number=input()
        count=count+1
    elif (int(number)< mynumber):
        print('Howdy, Your number is too low. Plz renter')
        number=input()
        count=count+1
    else :
        print('Howdy you got it in '+ str(count)+' chances. The correct number is '+number)    

Tags: nameinnumberinputyouriscountrandom
2条回答

我自己才刚开始使用python,也遇到了同样的问题。你知道吗

if语句都会将输入的数字转换为int,而while则不会。因此它会比较int和string。尝试:

while(mynumber != int(number))

或者将输入改为

number = int(input("blah")).

我更喜欢这个,即使它会抛出一个错误,如果你输入文本。你知道吗

您可能还需要将while改为while(mynumber!=int(number)),以及在ELSE中添加分隔符。您还可以删除else,如果数字匹配,就让循环退出,然后显示成功消息。你知道吗

相关问题 更多 >