import random
times=0
while True:
times += 1
if times<2:
toss=random.randint(0,1)
consult=input("请输入你猜的结果:")
if consult==toss:
print("恭喜你猜对了!")
elif consult!=toss:
print("猜错了")
elif times>=2:
break
缩进没了。
感谢回答,在编译器里是有缩进的
@CZYYYYYYYY: input返回不是字符串吗,这样比较行吗?还有没有缩进实在没办法
如果第二个elif和第一个if是一个缩进级别的,那就是只会执行一次第一次循环是1第二次循环是2
@jakio6: 大概明白您的意思,但是为什么只会执行一次?只要不满足IF>2,while true不会一直循环下去么?
@CZYYYYYYYY: 你的是不满足>=才循环吧
倒数第二行到倒数第一行删了
感谢回答。这样我尝试过,代码会无限循环下去。
#你是逻辑问题<= 与>
#还有str 和 int如果同为0 == 返回还是false
import random
times=0
#固定重试的次数
a = int(input("请输入你游戏可以重试的次数"))
while True:
times += 1
if times<=a:
toss=str(random.randint(0,1))
consult=input("请输入你猜的结果:")
if consult==toss:
print("恭喜你猜对了!")
#答对了停止
break
elif consult!=toss:
print("猜错了")
if times>a:
break