这个程序不断地一次又一次地给出答案,我找不到办法阻止它

import random


n = int (input('guess the number'))


randomnumber = random.randint(1,100)


while True:

    if n == randomnumber:

        print ('you have won')

        break   

    elif randomnumber > n :

        print('you guessed too high')

        

    else :

        print ('you guessed too low')

        

 

print ('thank you for playing')


湖上湖
浏览 159回答 4
4回答

慕莱坞森

循环永远不会结束,因为 n 和 randomnumber 都没有在循环内更新。尝试插入n = int (input('guess the number'))循环内部。

慕丝7291255

如果按Control+ ,任何 Python 程序都可能被破坏C。此外,我认为你想要的是程序应该在用户每次出错时询问用户。因此,在循环结束时while,重复询问用户 的值的代码行n。正如乔纳森所说,最好将该input语句移至循环顶部并删除input程序顶部的第一个语句。import randomrandomnumber = random.randint(1,100)while True:    n = int (input('guess the number'))    if n == randomnumber:        print ('you have won')        break       elif randomnumber > n :        print('you guessed too high')            else :        print ('you guessed too low')         print ('thank you for playing')

隔江千里

import randomn = int (input('guess the number'))randomnumber = random.randint(1,100)if n == randomnumber:    print ('you have won')elif randomnumber > n :    print('you guessed too high')        else:    print ('you guessed too low')        print ('thank you for playing')

牧羊人nacy

它会重复自身,因为它处于“while true”中,是一个循环,并且它将永远重复自身以解决它,删除 while true 并打破语句希望有帮助!
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python