版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
我一直以为写if还是elif都是一样的,今天没事做了下试验,证明凡是存在的都是合理的。。。。。不会存在无谓的东西。
通过运行下面的代码我可以看出,if…elif的逻辑是,程序先走if,能走就走,走完就不走elif了,走不通的情况才走elif。比如当x=7的时候,符合if下面的>5,运行print(‘大于5’,a),然后就没有然后了,即使也符合elif下面的<8,也是看不见看不见。。
if…if的逻辑是,先走前面的if,走通之后还会再看是否符合第二个if。。,以此类推。当x=7时,符合第一个if下面的>5,所以运行print(‘大于5’,a),然后还符合第二个if下面的<8,再运行print(‘小于8’,a)。。
a=7
if a>5:
print('大于5',a)
elif a<8:
print('小于8',a)
else:
print(a)
print('*'*50)
if a>5:
print('大于5',a)
if a<8:
print('小于8',a)
else:
print(a)