我正在尝试创建一个应用程序来玩策划者游戏,但我遇到了问题,而且我不太清楚出了什么问题。 每次我运行检查以查看猜测的整数是否正确时,它都会返回值 1 或 0(绝不会是 2、3 或 4)。任何解决此问题的帮助将不胜感激。 注意:打印 (a,b,c,d) 和 (r,q,h,l) 的行纯粹用于故障排除目的
import random
dummy = True
a=int(random.random()*10)
b=int(random.random()*10)
c=int(random.random()*10)
d=int(random.random()*10)
print(a,b,c,d)
while dummy == True:
f=0
if a == 0 or b ==0 or c == 0 or d == 0:
#run program again
dummy = False
print("Enter your four guesses, separated by commas.")
guess=input()
t,v,w,y=guess.split(",")
print(t,v,w,y)
r=int(t)
q=int(v)
h=int(w)
l=int(y)
if r==a:
f+=1
elif q==b:
f+=1
elif h==c:
f+=1
elif l==d:
f+=1
print(f)
if f==4:
dummy = False
print("Well done!")
最佳答案
您正在使用elif
,它仅在前面的条件为假时才运行(它是“else if”的缩写)。您可能需要单独的 if
if r==a:
f+=1
if q==b:
f+=1
if h==c:
f+=1
if l==d:
f+=1
您的代码在递增时停止,因此不能大于 1。
关于python - 主脑游戏无法运行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41211476/