请教,为什么小甲鱼游戏始终提示 “大了大了”
代码如下:import random
secret = random.randint(1, 10)
temp = input("不妨猜一下小甲鱼现在心里向的是哪个数字")
guess = int(temp)
while guess != secret:
if guess < secret:
print("小了小了")
temp = input("再来猜一下小甲鱼想的是哪个数字")
elif guess > secret:
print("大了大了")
temp = input("再来猜一下小甲鱼想的是哪个数字")
print("恭喜,猜对了,你是小甲鱼肚子里的蛔虫吗?")
print("游戏结束啦,不玩啦~~~~")
结果如下:
不妨猜一下小甲鱼现在心里向的是哪个数字9
大了大了
再来猜一下小甲鱼想的是哪个数字8
大了大了
再来猜一下小甲鱼想的是哪个数字7
大了大了
再来猜一下小甲鱼想的是哪个数字6
大了大了
再来猜一下小甲鱼想的是哪个数字5
大了大了
再来猜一下小甲鱼想的是哪个数字4
大了大了
再来猜一下小甲鱼想的是哪个数字4
大了大了
再来猜一下小甲鱼想的是哪个数字3
大了大了
再来猜一下小甲鱼想的是哪个数字2
大了大了
再来猜一下小甲鱼想的是哪个数字1
大了大了
再来猜一下小甲鱼想的是哪个数字11
大了大了
再来猜一下小甲鱼想的是哪个数字15
大了大了
再来猜一下小甲鱼想的是哪个数字100
大了大了 不清楚是代码哪里有问题,为什么始终在 “大了大了” 这一步代码循环呢???? 奇怪。。。。。。。 本帖最后由 考不好不改名 于 2021-4-10 18:26 编辑
改成这样import random
secret = random.randint(1, 10)
temp = input("不妨猜一下小甲鱼现在心里向的是哪个数字")
guess = int(temp)
while guess != secret:
if guess < secret:
print("小了小了")
elif guess > secret:
print("大了大了")
temp = input("再来猜一下小甲鱼想的是哪个数字")
guess = int(temp) # 这里加了一行代码
print("恭喜,猜对了,你是小甲鱼肚子里的蛔虫吗?")
print("游戏结束啦,不玩啦~~~~") 一个是字符串一个是数字,加个int就好了 那是因为你在循环中没有更新guess的值,所以提示永远是第一次输入的提示,改成这样:
import random
secret = random.randint(1, 10)
temp = input("不妨猜一下小甲鱼现在心里向的是哪个数字")
guess = int(temp)
while guess != secret:
if guess < secret:
print("小了小了")
elif guess > secret:
print("大了大了")
temp = input("再来猜一下小甲鱼想的是哪个数字")
guess = int(temp)
print("恭喜,猜对了,你是小甲鱼肚子里的蛔虫吗?")
print("游戏结束啦,不玩啦~~~~") 考不好不改名 发表于 2021-4-10 18:19
改成这样
哈哈,明白了,原来是guess没有更新值 hrp 发表于 2021-4-10 18:22
那是因为你在循环中没有更新guess的值,所以提示永远是第一次输入的提示,改成这样:
谢谢大佬,明白啦,原来是没有更新值的原因{:5_105:}
页:
[1]