【python】求助
本帖最后由 zim万岁 于 2020-4-11 17:06 编辑帮忙看看代码:
print('---------------游戏-----------------')
temp = input('猜猜我心里想的是哪个数字:')
guess = int(temp)
while guess != 8:
if guess < 8:
print('咳咳,小了')
temp = input('猜错了,重新输入:')
guess = int(temp)
if guess > 8:
print('猜大了')
temp = input('猜错了,重新输入:')
else:print('咳咳,小了')
while guess != 8:
if guess == 8:
print("WOW,对了!!!!!!!")
print('你厉害')
print("哼,就算猜中了也没奖励")
print('游戏结束啦~~~~~')
大家看看哪里出了问题,可以运行,但是会出现下面情况:
---------------游戏-----------------
猜猜我心里想的是哪个数字:8
咳咳,小了
游戏结束啦~~~~~
但是答案确实是8啊,为什么会提示小了呢????
有能力的大佬可以帮我修改下,和我的对比对比{:301_971:}
谢谢各位大佬,本人纯属小白,勿喷 本帖最后由 a976606645 于 2020-4-11 11:41 编辑
写错了呀
else:print('咳咳,小了')
这一句
改了一下
print('---------------游戏-----------------')
temp = input('猜猜我心里想的是哪个数字:')
guess = int(temp)
while guess != 8:
if guess < 8:
print('咳咳,小了')
guess = int(input('猜错了,重新输入:'))
if guess > 8:
print('猜大了')
guess = int(input('猜错了,重新输入:'))
print("WOW,对了!!!!!!!")
print('你厉害')
print("哼,就算猜中了也没奖励")
print('游戏结束啦~~~~~')
本帖最后由 谢阿金 于 2020-4-11 11:37 编辑
因为guess = 8
所以执行else:print('咳咳,小了') else:print('咳咳,小了'),这句要缩进,而且不能这样写 写python要注意空格,else没有缩进。 else:print('咳咳,小了')没有和if对齐,所以等于8经过while判断之后直接执行了else的内容 上面那个循环还要判断当guess==8的情况 不知道你是本来就这样写的,还是转到这里时弄错了,你两个while都是guess!=8 ,所以全都直接跳过了,然后运行了else后面的语句 本帖最后由 Zeaf 于 2020-4-11 12:50 编辑
注意条件判断语句(怎么又是你在问)
if
elif
else
其中elif可以使用多次
while true这样用然后再接条件判断语句比较好(break可以跳出循环)
print('---------------游戏-----------------')
while True:
guess = int(input('猜猜我心里想的是哪个数字:'))
try:
if guess < 8:
print('咳咳,小了')
elif guess > 8:
print('猜大了')
elif guess == 8:#或者直接用else
print("WOW,对了!!!!!!!")
print('你厉害')
print("哼,就算猜中了也没奖励")
break
except:
print('输入有误,请重试。')
print('游戏结束啦~~~~~') 没看懂为什么要用两个while