Python判断语句-语法:if,if else,if elif else,嵌套,if else语句扁平式写法,案例
目录
if语句
if else语句
if elif else语句
判断语句的嵌套
if else语句-扁平式写法
实战案例
if语句
if语句的基本格式:
注意:
- if条件后,可以写多行代码,注意前面都要空4格。
- if条件后,如果不知道写什么,就先用pass占位(因为缩进后没有任何代码,会报错)
- 如果没有空4格,表示和该判断无关
示例如下:
# if语句salary = 5989if salary > 5000:print("恭喜你,你的工资破5000了!")print("要继续加油哦!")print("不要称为社畜!")
运行
if else语句
if else语句的组合用法:
示例如下:
# if else语句age = int(input("请输入你的年龄:"))if age >= 18:print("你已成年,需要买票!")print("需要付费30元!")print("扫码还是现金呢?")else:print("你未成年,可免费游玩!")print("祝你游玩愉快!")
运行
if elif else语句
if elif else组合语句的多条件判断语法(进行多条件判断)
if 条件1:条件1满足做的事条件1满足做的事...elif 条件2:条件2满足做的事条件2满足做的事...elif 条件N:条件N满足做的事条件N满足做的事...else:所有条件都不满足做的事所有条件都不满足做的事...
注意:判断是互斥且有序的,else也可以省略不写。
例子如下:
# if elif else语句if int(input("请输入你的年龄:")) < 18:print("你未成年,可免费游玩!")print("祝你游玩愉快!")elif int(input("请输入你的vip级别:")) > 3:print("你的vip级别大于3,可免费游玩!")print("祝你游玩愉快!")elif int(input("请输入你的身高:")) < 120:print("你的身高小于120cm,可免费游玩!")print("祝你游玩愉快!")else:print("你不满足任何免票条件!")print("需要付费30元!")print("扫码还是现金呢?")
运行
判断语句的嵌套
判断语句的嵌套:满足前置条件后,再次进行二次判断的多层判断需求。对于逻辑的判断是嵌套的,多层次的,可以自由组合if elif else来完成特定需求的要求。
嵌套的关键就是:空格缩进,由此便有了层次关系(即只有条件1满足时,才会去判断条件2)。
判断语句嵌套的基础语法格式如下:
if 条件1:满足条件1做的事满足条件1做的事...if 条件2:满足条件2做的事满足条件1做的事...
示例如下:
if int(input("请输入你的年龄:")) >= 18:print("你已成年,不可以免费!")print("但如果你的身高不超过120,即可免费")if int(input("请输入你的身高:")) > 120:print("你的身高超过120,不可以免费游园!")print("你可以免费游园,祝你游园愉快!")
运行
if elif else自由组合嵌套,示例如下:
公司发礼物,条件是:
- 年龄必须大于等于18小于30;
- 满足以上的同时入职时间需大于2年,或者级别大于3才可以领取。
- # if elif else自由组合嵌套 age = 20 year = 1 level = 5 if age >= 18: print("你是成年人!") if age < 30: print("你的年龄达标") if year > 2: print("恭喜你,年龄和入职时间都达标,可以领取礼物!") elif level > 3: print("恭喜你,年龄和级别都达标,可以领取礼物!") else: print("你的入职时间和级别都不达标,不可以领取礼物!") else: print("你的年龄大于等于30岁,不可以领取礼物!") else: print("小朋友不可以领取礼物!")
运行
if else语句-扁平式写法
if else格式,扁平式写法:
变量 = 判断条件为True时执行的代码 if 判定条件 else 判断条件为False时执行的代码
示例:
一般我们会这样写if else语句(以比大小为例)
a, b = 10, 22 # 一般拆开写比较好if a > b:max_num = aelse:max_num = bprint(max_num)
运行
简化if else写法,如下:
a, b = 10, 22max_num = a if a > b else b # 变量 = 判断条件为True时执行的代码 if 判定条件 else 判断条件为False时执行的代码print(max_num)
运行
实战案例
案例:
定义一个数字(1~10,随机产生),有3次机会猜出数字,每次猜不中,会提示大了或小了。
要求:用判断语句嵌套的方式实现。
代码如下:
# 案例# 获取1~10的随机数字import randomnum = random.randint(1, 10)guess_num = int(input("请输入你猜测的数字:"))if guess_num == num:print("恭喜!一次就猜中了")elif guess_num > num:print("大了")guess_num = int(input("请第二次输入猜测的数字:"))if guess_num == num:print("恭喜!第二次猜中了")elif guess_num > num:print("大了")guess_num = int(input("请第三次输入猜测的数字:"))if guess_num == num:print("恭喜!第三次猜中了")elif guess_num > num:print("大了")else:print("小了")else:print("小了")guess_num = int(input("请第三次输入猜测的数字:"))if guess_num == num:print("恭喜!第三次猜中了")elif guess_num > num:print("大了")else:print("小了")else:print("小了")guess_num = int(input("请第二次输入猜测的数字:"))if guess_num == num:print("恭喜!第二次就猜中了")elif guess_num > num:print("大了")guess_num = int(input("请第三次输入猜测的数字:"))if guess_num == num:print("恭喜!第三次猜中了")elif guess_num > num:print("大了")else:print("小了")else:print("小了")guess_num = int(input("请第三次输入猜测的数字:"))if guess_num == num:print("恭喜!第三次猜中了")elif guess_num > num:print("大了")else:print("小了")
运行