话说,写了这么久测试代码,突然被if和elif的用法卡住了,突然发现原来对他们两个的作用不是很明确,细思极恐啊。。。。
亡羊补牢为时未晚,下面两段代码帮助有同样困惑的大家解惑(也许只有我不懂,哈哈哈哈。。。。)
#encoding=utf-8
a=88
if a>= 90:
print u"优秀"
if a == 88:
print u"正好88"
if a >= 80:
print u"良好"
else:
print u"都不合格"
print "* * "*10
if a>= 90:
print u"优秀"
elif a == 88:
print u"正好88"
elif a >= 80:
print u"良好"
else:
print u"都不合格"
结果如下:
正好88
良好
* * * * * * * * * * * * * * * * * * * *
正好88
不知道大家看到这里有什么想法,是不是一下子就明白了!
我再来赘述以下:
说的通俗一点,如果是用 if 的话,他会一直遍历完所有的if,不管你想判断的条件有没有遍历到,他都会继续执行完所有的if;
而 elif 呢,则会比较快捷,主要还是看你的用处,如果你是想遍历到你的判断条件就不再执行其他判断条件分支语句,那么就用elif;elif 就是当走到符合查询条件的语句后,后面所有的elif和else就不会再被执行;