Crossin的编程教室
标题:
【求助】while语句时有逻辑问题
[打印本页]
作者:
拥有玫瑰的星空
时间:
2018-8-1 11:02
标题:
【求助】while语句时有逻辑问题
我是想让用户重复输入包含‘聪明‘或’傻‘字的语句,输入其他内容时则提示错误,输入’聪明‘之前可以不断输入。
现在的问题是:在用户输入’聪明‘后,程序会把“输入其他内容时的提示”也一起打印出来。
代码如下,请求大佬指正:a = False
print('你觉得我是个什么样的人?')
while a == False:
answer = input()
if'傻' in answer:
print('你才傻')
if '聪明' in answer:
print('嘿嘿,还好啦')
a = True
else:
print('听不懂')
运行结果:
你觉得我是个什么样的人?
456
听不懂
傻子
你才傻
听不懂
聪明人
嘿嘿,还好啦
作者:
crossin先生
时间:
2018-8-1 14:35
因为你第二个用的是 if 而不是 elif,所以你这里有两个独立判断逻辑
作者:
伤感的小龙虾
时间:
2018-8-1 17:11
a = False
print('你觉得我是个什么样的人?')
while a == False:
answer = input()
if'傻' in answer:
print('你才傻')
elif '聪明' in answer:
print('嘿嘿,还好啦')
a = True
else:
print('听不懂')
作者:
拥有玫瑰的星空
时间:
2018-8-7 08:52
伤感的小龙虾 发表于 2018-8-1 17:11
a = False
print('你觉得我是个什么样的人?')
原来是这样,试了试,果然。
多谢龙虾兄出手相助
欢迎光临 Crossin的编程教室 (https://bbs.crossincode.com/)
Powered by Discuz! X2.5