Python: 反向猜数字游戏
我写了这个代码来做一个反向猜谜游戏,但它在第一次的时候会打印出两次c。请记住,(d=正确) (b=更大) (k=更小)。
import random
c = random.randint(1,99)
print(c)
a = str(input())
while a != "d":
if a == "b":
print(c)
c = random.randint(c,99)
a = str(input())
elif a == "k":
print(c)
c = random.randint(1,c)
a = str(input())
elif a == "d":
break
输出结果是这样的:
67
b
67
我希望67只打印一次。
我试着把第3、7、11行的print(c)
去掉了。
2 个回答
0
这应该可以正常工作
import random
c=random.randint(1,99)
print(c)
a=str(input())
while a!="d":
if a=="b":
c=random.randint(c,99)
print(c)
a=str(input())
elif a=="k":
c=random.randint(1,c)
print(c)
a=str(input())
elif a=="d":
break
1
如果你不想让 c 打印两次,可以试着在生成新随机数之后再添加一次打印语句,就像你第一次做的那样。