import random
number = random.randint(1,100)
while True:
pick = input("Choose a number between 1 and 100. ")
pick = int(pick)
if pick == number:
print("You are correct, great job! ")
while True:
if pick > number:
print("That was too high of a guess. Try again. ")
break
elif pick < number:
print("That was too low of a guess. Try again. ")
break
代码按照我希望的方式运行,但它在一次正确猜测后停止,并且我希望一旦用户正确猜测数字,循环就会重新启动
最佳答案
用一会一歇:
import random
number = random.randint(1,100)
while True:
pick = int(input("Choose a number between 1 and 100. "))
if pick == number:
print("You are correct, great job! ")
break # correct guess, break
elif pick > number:
print("That was too high of a guess. Try again. ")
else: # one possibility left, so no need for another elif
print("That was too low of a guess. Try again. ")
测试用例:
Choose a number between 1 and 100. 80
That was too high of a guess. Try again.
Choose a number between 1 and 100. 60
That was too high of a guess. Try again.
Choose a number between 1 and 100. 40
That was too low of a guess. Try again.
Choose a number between 1 and 100. 50
That was too low of a guess. Try again.
Choose a number between 1 and 100. 55
That was too high of a guess. Try again.
Choose a number between 1 and 100. 53
That was too low of a guess. Try again.
Choose a number between 1 and 100. 54
You are correct, great job!
如果您不希望它在正确猜测后停止,请删除中断,然后再次猜测:
import random
number = random.randint(1,100)
while True:
pick = int(input("Choose a number between 1 and 100. "))
if pick == number:
print("You are correct, great job! ")
number = random.randint(1,100) # guess again
elif pick > number:
print("That was too high of a guess. Try again. ")
else: # one possibility left, so no need for another elif
print("That was too low of a guess. Try again. ")
关于python - 我的代码可以工作,从某种意义上说,它运行我想要它执行的操作,但是一旦用户正确猜出数字,终端就会结束并且不会循环,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46017080/