刚开始学 问题出在哪儿啊
import randomsecret = random . randint(1 , 10)
temp = input("不妨猜猜小甲鱼现在心里想的是那个数字: ")
guess = int(temp)
times = 3
while (guess != secret) and (times > 1):
if guess > secret:
print("大了大了!")
else:
print("小了小了!")
temp = input("请再试试吧:")
guess = int(temp)
times = times - 1
if(times <= 3) and (guess == secret):
print("哎呀,你是小甲鱼心里的蛔虫吗!")
print("哼 ,猜对了也没有奖励!")
else:
print("没机会啦")
运行后
不妨猜猜小甲鱼现在心里想的是那个数字: 4
小了小了!
请再试试吧:5
没机会啦 #为什么这里多出现一次没机会啦
小了小了!
请再试试吧:6
没机会啦
因为你的代码是if - else 呀,if 条件如果不成立 则执行 else 的条件,所以当你没猜对的时候 就会执行 else 导致这里多打印了 没机会啦
还有你的 times <= 3 可以去掉 因为 times 初始化为 3每次输入错 -1所有你的 times <= 3 这个条件始终满足,在这里是多余的了
所以最好把 else 改成 if 是否等于 1 即可~
正确代码:
import random
secret = random . randint(1 , 10)
temp = input("不妨猜猜小甲鱼现在心里想的是那个数字: ")
guess = int(temp)
times = 3
while (guess != secret) and (times > 1):
if guess > secret:
print("大了大了!")
else:
print("小了小了!")
temp = input("请再试试吧:")
guess = int(temp)
times = times - 1
if guess == secret:
print("哎呀,你是小甲鱼心里的蛔虫吗!")
print("哼 ,猜对了也没有奖励!")
if times == 1:
print("没机会啦") 是最后一行的缩进问题吗? Twilight6 发表于 2020-6-27 00:03
因为你的代码是if - else 呀,if 条件如果不成立 则执行 else 的条件,所以当你没猜对的时候 就会 ...
但是我是按照书上的代码来打的 啊 卧槽{:5_99:} wtf??? 发表于 2020-6-27 00:10
是最后一行的缩进问题吗?
是有点关系的我把后面那个else删除了就好了 没名字能用了 发表于 2020-6-27 16:43
是有点关系的我把后面那个else删除了就好了
删掉就不会显示没机会了,你改成我那样就行,去理解消化下吧~~~
页:
[1]