python中if和elif的区别
多个if语句是每次单独判断
比如:
例子一:
a = 5
if a < 6: #条件1
print(1)
if a < 7: #条件2
print(2)
else:
print(3)
条件1和条件2是独立的,第一次判断a的值小于6,所以打印出数字1,第二次判断a的值小于7,所以打印出2。如果所有的if语句都判断失败,才会执行else后的语句,否则else语句不执行。
如果条件2修改为elif,结果就不同了
例子二:
#Python学习交流群:778463939
a = 5
if a < 6: #条件1
print(1)
elif a < 7: #条件2
print(2)
else:
print(3)
这次条件1和条件2是相关的,也就是说,如果条件1判断成功的话,条件2就不会继续判断了。反过来,如果条件1判断失败,那么就会继续判断条件2.如果条件1和条件2都判断失败,那么则执行else里面的语句。
例子二的结果很明显就是只会打印出1。
当然把if和elif混合起来也是可以的,只不过这样看起来怪怪的,可读性也差
例子三:
a = 5
if a < 6:
print(1)
elif a < 4:
print(2)
if a < 7:
print(3)
else:
print(4)
结果是:1,3
应用场景:
-
如果你只想执行一个代码块,那么用if-elif-else结构吧;
-
如果你要运行多个代码块,那么就用多个if吧。(多条件同时满足)