我 的 个 人 主 页:👉👉 失心疯的个人主页 👈👈
入 门 教 程 推 荐 :👉👉 Python零基础入门教程合集 👈👈
虚 拟 环 境 搭 建 :👉👉 Python项目虚拟环境(超详细讲解) 👈👈
PyQt5 系 列 教 程:👉👉 Python GUI(PyQt5)文章合集 👈👈
Oracle数据库教程:👉👉 Oracle数据库文章合集 👈👈
优 质 资 源 下 载 :👉👉 资源下载合集 👈👈
@[TOC](Python基础语法_IF分支(判断)结构)
分支的概念和应用场景
概念
- python分支语句是python编程语言中的一种重要的概念,在语法上,它采用的是一种条件判断的方式来控制程序的流程,即根据特定的条件,编写出不同的程序执行路径。python分支语句可以根据所提供的条件进行快速判断,让程序更具逻辑性、表达力,使程序更易于理解和维护
作用
- python分支语句主要用于处理多分支程序,可以通过指定不同的条件,来执行不同的程序段,更有效地控制程序的执行。它的作用主要包括:
- 控制程序的条件执行,也就是只有当特定的条件符合时,才会执行特定的代码段,即 python程序的执行路径可以根据特定的输入情况而发生改变
- 执行更复杂的程序,通过不同的条件不断地控制程序执行,可以做出更复杂的程序应用,从而满足日常开发需求
- 提升程序运行效率,通过分支语句可以更有效地控制程序的执行不用让程序空转,来提升程序的运行效率
- 降低程序的维护成本,分支语句的使用可以提高程序的可读性和可维护性,减少程序的维护成本
应用场景
- 上网
有身份证 and 成年 and 有钱
- 安检
有票 and 没有携带违禁物品
- ATM取钱
有卡 and 密码正确 and 有余额
- 用户登录
用户登录 ————> 账号正确 and 密码正确 or 二维码扫描成功 or 指纹识别成功
分支语句分类
- IF语句(如果…则…,否则…)
- 单分支:if……
- 双分支:if……else……
- 多分支:if……elif……else……
分支类型的结构图解
单分支判断
- 语法
if 条件:满足条件后要执行的代码
if 条件: 满足条件后要执行的代码
- 示例
# 案例:用户输入年龄,如果年龄大于等于18岁,则输出“你已经成年了” # 写法1: age = int(input('请输入年龄:')) if age >= 18: print('你已经成年了!') # 写法2: if age >= 18: print('你已经成年了!')
双分支判断
- 语法
if 条件: 满足条件,执行的代码 else: 条件不满足则执行这行代码
- 示例
# 案例:用户输入年龄,如果年龄大于等于18岁,则输出“你已经成年了!”,否则输出“你还是未成年!” age = int(input('请输入年龄:')) if age >= 18: print('你已经成年了!') else: print('你还是未成年!')
多分支判断
- 语法
if 条件1: 满足条件1,执行的代码 elif 条件2: 满足条件2,执行的代码 else: 以上条件都不满足执行这行代码
- 在python中没有
swith...case
语法 - 示例
# 案例:成绩等级判断 # 成绩大于等于90,小于等于100,优秀 # 成绩大于等于80,小于90,良好 # 成绩大于等于60,小于80,及格 # 成绩大于等于0,小于60,不及格 score = float(input('输入成绩:')) if 90 <= score <= 100: print('优秀') elif 80 <= score < 90: print('优秀') elif 60 <= score < 80: print('及格') elif 0 <= score < 60: print('不及格') else: print('分数无效')
IF嵌套
- IF嵌套:if分支内部再写if分支
- 语法:
if 条件1:
if 条件2:
满足条件1,且满足条件2,执行语句
else:
满足条件1,但不满足条件2,执行语句
else:
if 条件3:
不满足条件1,但满足条件3,执行语句
else:
不满足条件1,且不满足条件3,执行语句
- 示例:
# 案例:
# 男性身体健康输出,先生你好,你的身体非常健康,不健康则输出,先生你好,你的身体抱恙!
# 女性圣体健康输出,女士你好,你的身体非常健康,不健康则输出,女士你好,你的身体抱恙!
if sex == '男':
if state == '健康':
print('先生你好,你的身体非常健康!')
else:
print('先生你好,你的身体抱恙')
else:
if state == '健康':
print('女士你好,你的身体非常健康!')
else:
print('女士你好,你的身体抱恙')
注意事项
- python语言是通过Tab键缩进进行区分代码块
- 建议不要写嵌套层级太深的代码
- python中没有类似于其他语言中的swith…case语法
案例
- 优化体脂率计算案例
- 输入内容容错处理
- 身高范围:0 < 身高 < 3
- 体重范围:0 < 体重 < 300
- 年龄范围:0 < 年龄 < 150
- 性别范围:1 或者 0
- 数据处理
- 针对男女的判定标准,分别进行判断,而不是通过找规律计算最大值、最小值进行判定
- 输出处理
- 结果提示优化
- 男:先生你好
- 女:女士你好
- 正常:恭喜您,身体非常健康,请继续保持!
- 不正常:请注意,您的身体偏瘦/胖
- 结果提示优化
- 优化代码1
# 案例需求:采集一个人的身高、体重、年龄和性别,计算他的体脂率,并判断是否在正常范围之内 # 输入数据 # 身高 personHeight = input('请输入身高(m):') personHeight = float(personHeight) # 体重 personWeight = input('请输入体重(kg):') personWeight = float(personWeight) # 年龄 personAge = input('请输入年龄:') personAge = int(personAge) # 性别 personSex = input('请输入性别(男:1,女:0):') personSex = int(personSex) # 数据容错处理 # 身高范围:0 < 身高 < 3 # 体重范围:0 < 体重 < 300 # 年龄范围:0 < 年龄 < 150 # 性别范围:1 或者 0 if 0 < personHeight < 3 and 0 < personWeight < 300 and 0 < personAge < 150 and (personSex == 1 or personSex == 0): # 处理数据 # 计算体脂率 # BMI = 体重(kg)/(身高 * 身高)(米) # 体脂率 = (1.2 * BMI + 0.23 * 年龄 - 5.4 - 18.8 * 性别(男:1,女:0))/100 BMI = personWeight / (personHeight * personHeight) TZL = 1.2 * BMI + 0.23 * personAge - 5.4 - 18.8 * personSex TZL /= 100 # 判断体脂率是否在正常的标准范围之内 # 正常成年人的体脂率分别是: # 男性:15 % ~ 18 % # 女性:25 % ~ 28 % if personSex == 1: if 0.15 < TZL < 0.18: print('先生您好,您的体脂率在正常范围,请继续保持!') else: print('先生您好,您的体脂率已经超标了,请注意控制!') else: if 0.25 < TZL < 0.28: print('女士您好,您的体脂率在正常范围,请继续保持!') else: print('女士您好,您的体脂率已经超标了,请注意控制!')
- 优化代码2
# 案例需求:采集一个人的身高、体重、年龄和性别,计算他的体脂率,并判断是否在正常范围之内 # 输入数据 # 身高 personHeight = input('请输入身高(m):') personHeight = float(personHeight) # 体重 personWeight = input('请输入体重(kg):') personWeight = float(personWeight) # 年龄 personAge = input('请输入年龄:') personAge = int(personAge) # 性别 personSex = input('请输入性别(男:1,女:0):') personSex = int(personSex) # 数据容错处理 # 身高范围:0 < 身高 < 3 # 体重范围:0 < 体重 < 300 # 年龄范围:0 < 年龄 < 150 # 性别范围:1 或者 0 if not (0 < personHeight < 3 and 0 < personWeight < 300 and 0 < personAge < 150 and (personSex == 1 or personSex == 0)): # 退出程序 exit() # 处理数据 # 计算体脂率 # BMI = 体重(kg)/(身高 * 身高)(米) # 体脂率 = (1.2 * BMI + 0.23 * 年龄 - 5.4 - 18.8 * 性别(男:1,女:0))/100 BMI = personWeight / (personHeight * personHeight) TZL = 1.2 * BMI + 0.23 * personAge - 5.4 - 18.8 * personSex TZL /= 100 # 判断体脂率是否在正常的标准范围之内 # 正常成年人的体脂率分别是: # 男性:15 % ~ 18 % # 女性:25 % ~ 28 % if personSex == 1: result = 0.15 < TZL < 0.18 wenhao = '先生您好,' maxNum = 0.18 else: result = 0.25 < TZL < 0.28 wenhao = '女士您好,' maxNum = 0.28 if result: print(wenhao, '您的体脂率在正常范围,请继续保持!') else: if TZL > maxNum: print(wenhao, '您的体脂率不正常,偏胖,请注意减肥!') else: print(wenhao, '您的体脂率不正常,偏瘦,请补充营养!')