判断语句和循环语句2.6 elif

一、引入

if能完成条件满足时做可以执行某些代码

if-else能完成条件满足时执行某些代码,不满足时执行另外一些代码

如果有这样一种情况:当条件1满足时做事情1;条件2满足时做事情2;条件3满足时做事情3,那该怎么实现呢?

答:elif

二、elif使用

elif的使用格式如下:

if 条件1:
    事情1
elif 条件2:
    事情2
elif 条件3:
    事情3
# ...省略N个条件...
elif 条件n:
    事情n
else:
    以上条件都满足时执行的代码

  

 

说明1,执行流程

  • 当条件1满足时,执行事情1,然后整个if结束
  • 当条件1不满足条件2满足时,则执行事情2,然后整个if结束
  • 当条件1、条件2不满足条件3满足时,则执行事情3,然后整个if结束
  • 依次类推,如果条件1、条件2、条件3.。。。。条件n-1都不满足且条件n满足,则执行事情n,然后整个if结束
  • 如果没有任何条件满足,那么就执行else中的事情

说明2,else

  • else不是必须的,根据实际情况决定是否添加,如果所有条件满足时做的事情很明确,且没有全部都不满足的时候,此时就不用写
  • 如果当前能考虑的条件都有对应的代码,但不能保证所有条件都考虑到了,此时建议写上else

三、示例

score = 77  # 定义变量存储分数

if score>=90 and score<=100:  # 如果分数在90~100
    print('本次考试,等级为A')
elif score>=80 and score<90:  # 如果分数在80~90
    print('本次考试,等级为B')
elif score>=70 and score<80:  # 如果分数在70~80
    print('本次考试,等级为C')
elif score>=60 and score<70:  # 如果分数在60~70
    print('本次考试,等级为D')
elif score>=0 and score<60:  # 如果分数在60以下
    print('本次考试,等级为E')
else:  # 如果分数不在0~100之间,就认为错误
    print("分数有误...")

  

 

四、注意点

if判断中,最多只能有1个else,但可以有N个elif,必须有1个if

下面的写法是错误的

错误示范1:一个if最多有1个else

if 100 > 60:
    print("哈哈哈1")
else:
    print("哈哈哈2")
else:
    print("哈哈哈3")

  

 

错误示范2:一个if判断必须有1个if

else:
    print("哈哈哈2")

  

 

五、总结

到现在为止,if总体来说学习了3种

  • 第1种:只判断一个条件,我们用if来实现
  • 第2种:可判断2个条件(满足、不满足),我们用if...else...来实现
  • 第3种:可以判断N个条件,我们用if...elif...elif...else...来实现
原文地址:https://www.cnblogs.com/dong4716138/p/15657726.html