课程
/后端开发
/Python
/初识Python
分数>=80,输出good ,90分以上也是>80的,请问有什么更好的表达方式吗
2019-11-04
源自:初识Python 5-3
正在回答
在python2的解释环境里面是没问题的。第一个条件匹配了之后,就不会继续往下走了,所以写代码块的时候,匹配条件的先后顺序怎么排列也是一个技巧
这没什么问题吧?进入第一个if的时候不满足条件,不会输出,进入第二个if语句满足条件,输出good,之后就不会往下循环了啊!到这里不就结束了吗?
score = 85
if score >= 90:
print 'excellent'
if score >= 80:
print 'good'
if score >= 60:
print 'passed'
else:
print 'failed'
其实主要是需求不明确,85分其实可以是good,也是passed。当然实际应用中应该是判断分数区间80<=score<90,这样,三个判断没有重叠区间,所以就不会有歧义
如果大于90,那么值就会在第一步直接表达出来,不会流到第二部。你也可以自己限制一下,80<=score<90.
举报
学python入门视频教程,让你快速入门并能编写简单的Python程序