零基础教学教材3.8中代码为什么times <= 3就不行
#三次机会才一个1-10的随机数import random
secert = random.randint(1,10)
temp = input("请输入一个数字:")
guess = int(temp)
times = 1
while (guess != secert) and (times < 3):
if guess > secert:
print("大了兄弟")
else:
print("小了兄弟")
temp = input("再给一次机会:")
guess = int(temp)
times = times + 1
#if times < 3:
if guess == secert:
print("你可真棒 猜对了")
else:
print("抱歉 三次机会都没猜中 真笨") 因为<=3就会多一次(3也符合条件,到4才会退出循环) qiuyouzhi 发表于 2020-4-18 15:31
因为
是的 我测试了 但是里边的原理没太明白 哈哈哈哈 之后仔细一想是先有的判断 后又的times + 1 liuxiuqing 发表于 2020-4-18 15:35
是的 我测试了 但是里边的原理没太明白 哈哈哈哈 之后仔细一想是先有的判断 后又的times + 1
那就设个最佳答案吧~ qiuyouzhi 发表于 2020-4-18 15:37
那就设个最佳答案吧~
那我在请教一下 为啥#if times < 3:
if guess == secert: 这两个都可啊 liuxiuqing 发表于 2020-4-18 15:39
那我在请教一下 为啥#if times < 3:
if guess == secert: 这两个都可啊
if times小于3是因为最多猜3次,如果times等于3就是猜的次数过长,只有猜对了
times才会小于3.
那个if guess == secret就不说了吧,输入的和答案相等。 qiuyouzhi 发表于 2020-4-18 15:46
if times小于3是因为最多猜3次,如果times等于3就是猜的次数过长,只有猜对了
times才会小于3.
那个if...
好的谢谢
页:
[1]