Python判断语句_if elif else 语句
学习目标:
1、掌握if elif else
语句进行多条件判断的语法
某些场景下,判断条件不止一个,可能有多个。
这种需求Python如何实现?
一、if elif else
语句
1.1、语法
在生活中,如果条件1成立,则做动作1;或者条件2成立,则做动作2;或者条件N成立,则做动作N;否则则做动作N+1。
比如:如果这顿饭是早饭,我就去吃包子;或者这顿饭是午饭,我就去吃盖浇饭;否则我就去喝汤。
在程序中的判断语法:
if 条件1:
条件1满足应做的事情1
条件1满足应做的事情2
...
elif 条件2:
条件2满足应做的事情1
条件2满足应做的事情2
...
elif 条件N:
条件N满足应做的事情1
条件N满足应做的事情2
...
else:
所有条件都不满足应做的事情1
所有条件都不满足应做的事情2
...
1.2、正常写法实践
示例1:
print("欢迎来到黑马动物园。")
height = int(input("请输入你的身高(cm):"))
vip_level = int(input("请输入你的vip级别(1~5):"))
if height < 120:
print("您的身高未超出120cm,可以免费游玩。")
elif vip_level > 3:
print("您的vip级别大于3,可以免费游玩。")
else:
print("不好意思,所有条件都不满足,需要购票10元。")
print("祝您游玩愉快。")
当身高=110,vip=5级时:
当身高=130,vip=1级时:
当身高=130,vip=4级时:
示例2(多个elif语句):
print("欢迎来到黑马动物园。")
height = int(input("请输入你的身高(cm):"))
vip_level = int(input("请输入你的vip级别(1~5):"))
day = int(input("请输入今天的日期(1~30):"))
if height < 120:
print("您的身高未超出120cm,可以免费游玩。")
elif vip_level > 3:
print("您的vip级别大于3,可以免费游玩。")
elif day == 1:
print("今天是1号免费日,可以免费游玩。")
else:
print("不好意思,所有条件都不满足,需要购票10元。")
print("祝您游玩愉快。")
注意点:
elif
语句可以写多个;- 判断是互斥且有顺序的
- 满足条件1,将不会理会条件2和条件3;
- 满足条件2,将不会理会条件3;
- 1、2、3均不满足,进入
else
; else
也可以省略不写,效果等同于所有判断条件都不满足后直接结束;
elif
代码块的空格缩进同样不可省略;
1.3、结合写法实践
基于上面的示例,可以将 input
语句直接写入判断条件中,节省代码量。
print("欢迎来到黑马动物园。")
if int(input("请输入你的身高(cm):")) < 120:
print("您的身高未超出120cm,可以免费游玩。")
elif int(input("请输入你的vip级别(1~5):")) > 3:
print("您的vip级别大于3,可以免费游玩。")
elif int(input("请输入今天的日期(1~30):")) == 1:
print("今天是1号免费日,可以免费游玩。")
else:
print("不好意思,所有条件都不满足,需要购票10元。")
print("祝您游玩愉快。")
当身高=110时:
当身高=130,vip=4时:
当身高=130,vip=2,日期=1时:
当身高=130,vip=2,日期=5时:
1.4、练习案例:猜猜心里数字
- 定义一个变量,数字类型,内容随意
- 基于input语句输入猜想的数字,通过if和多次的elif的组合,判断猜想数组是否和心里数字一致。
num = 10
if int(input("请输入第一次猜想的数字:")) == num:
print(f"恭喜第一次就猜对啦,我想的就是{num}")
elif int(input("不对,再猜一次:")) == num:
print(f"恭喜你猜对啦,我想的就是{num}")
elif int(input("不对,再猜最后一次:")) == num:
print(f"恭喜最后一次机会,你猜对啦,我想的就是{num}")
else:
print(f"Sorry,全部猜错啦,我想的是:{num}")