为什么输入大于30000的数字后会输出'舰长要小心身体 ‘'啊舰长太躺平了吧'两个结果
shuijin=int(input('请输入上个月获得水晶数量'))
if shuijin>30000:
print('舰长要小心身体啊')
if 30000<=shuijin<25000:
print('最勤劳的舰长就是你')
if 25000<=shuijin<20000:
print('作为舰长还不够努力啊')
if 20000<=shuijin<15000:
print('老舰长真的没有肝费吗?')
if 15000<=shuijin<10000:
print('舰长继续努力啊')
if 10000<=shuijin<5000:
print('舰长加油,老婆就在眼前')
else:
print('舰长太躺平了吧')
请输入上个月获得水晶数量222222
舰长要小心身体啊
舰长太躺平了吧
请输入上个月获得水晶数量222222
舰长要小心身体啊
舰长太躺平了吧
因为你都用的if判断,会对输入判读多次,应该用elif,参考我的代码:
shuijin=int(input('请输入上个月获得水晶数量'))
if shuijin>30000:
print('舰长要小心身体啊')
elif 30000<=shuijin<25000:
print('最勤劳的舰长就是你')
elif 25000<=shuijin<20000:
print('作为舰长还不够努力啊')
elif 20000<=shuijin<15000:
print('老舰长真的没有肝费吗?')
elif 15000<=shuijin<10000:
print('舰长继续努力啊')
elif 10000<=shuijin<5000:
print('舰长加油,老婆就在眼前')
else:
print('舰长太躺平了吧')
因为30000的条件满足你下面的两个条件哇,所以都需要输出啊
多加几个else
一个else会匹配最近的一个if,你这个else是匹配倒数第一个if语句。
建议使用
if
else if
else if
else
的结构
当你输入大于30000的数时,
满足
if shuijin>30000:
print('舰长要小心身体啊')
这里不满足if条件,执行esle下面的语句
if 10000<=shuijin<5000:
print('舰长加油,老婆就在眼前')
else:
print('舰长太躺平了吧')
再说会为什么会显示两个的问题,前几个if只有第一个舰长要小心身体啊的判断符合条件,中间几个if不符合没有输出。最后一个if也不符合输出了else里的舰长太躺平了吧