关于while循环
temp=input('say one number')guess=int(temp)
while guess!=8:
temp=input('try again')
guess=int(temp)
if guess==8:
print('you got it,girl')
else:
if guess>8:
print('try smaller one')
else:
print('try bigger one')
print('good bye')
代码为以上,为何当我第一次输入8的时候,直接显示的就是goodbye了;但是当我尝试其他答案之后,再输入8,结果又和我想的一样。所以我也不知道哪里逻辑错了! 本帖最后由 qiuyouzhi 于 2020-5-5 13:18 编辑
因为循环条件就是guess不等于8,你直接等于8就不会进入循环了。
可以改成这样:
while True:
temp=input('say one number')
guess=int(temp)
if guess==8:
print('you got it,girl')
break
else:
if guess>8:
print('try smaller one')
else:
print('try bigger one')
print('good bye') 本帖最后由 老兵hb 于 2020-5-5 13:21 编辑
输入8,不进while循环体;
输入其他,进while循环体;
不等于8的条件下,还有个如果等于8,有点乱。 8 是正确答案,所以就 goodbye 了 qiuyouzhi 发表于 2020-5-5 13:16
因为循环条件就是guess不等于8,你直接等于8就不会进入循环了。
可以改成这样:
哇,谢谢!这样break也用上了。更完美。感谢!
页:
[1]