本文小编为大家详细介绍“Python程序的分支结构怎么用”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python程序的分支结构怎么用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。
单分支结构:if 语句
Python 中 if 语句的语法格式如下:
if <条件>:  
<语句块>
语句块是 if 条件满足后执行的一个或多个语句序列,语句块中语句通过与 if 所在行形成缩进表达包含关系。if 语句首先评估条件的结果值,如果结果为 True,则执行语句块中的语句序列,然后控制转向程序的下一条语句。 如果结果为 False,语句块中的语句会被跳过。
if 语句中语句块执行与否依赖于条件判断。但无论什么情况,控制都会转到 if 语句后与该语句同级别的下一条语句。
if 语句中条件部分可以使用任何能够产生 True 或 False 的语句或函数。形成判断条件最常见的方式是采用关系操作符。Python 语言共有 6 个关系操作符,包括 小于、小于或等于、大于或等于、大于、等于和不等于。
特别注意,Pybon 使用 “=” 表示赋值语句,使用 “==” 表示等于。
下面我们通过一个实例来更好地掌握 if 语句。
空气污染是当下社会比较关注的问题,PM2.5 是衡量空气污染的重要指标。PM2.5 是指大气中直径小于或等于 2.5 um的可入肺颗粒物。PM2.5 颗粒粒径小,含大量有毒、有害物质且在大气中停留时间长、输送距离远,因而对人体健康和大气环境质量有很大影响。目前空气质量等级以 PM2.5 数值划分为 6 级。PM2.5 数值在 0~35 空气质量为优,35~75 为良,75~115 为轻度污染,115~150 为中度污染,150~250 为重度污染,250~500 为严重污染。
一个简化版的空气质量标准采用三级模式: 0~35 为优,35~75 为良,75 以上为污染。人们也许不关心 PM2.5 指数值具体为多少,而更关心空气质量到底怎样。计算机可以通过 PM2.5 指数分级发布空气质量提醒。
该问题的 IPO 描述如下:
输入:接收外部输入的 PM2.5 值
处理:   if PM2.5值 ≥ 275,打印空气污染警告   if 35 ≤ PM2.5 值 < 75,打印空气质量良,建议适度户外运动   if PM2.5 值 < 35,打印空气质量优,建议户外运动
输出:打印空气质量提醒
具体代码如下:
PM = eval(input("请输入 PM2.5 数值:")) if 0 <= PM < 35: print("空气优质,快去户外运动") if 35 <= PM < 75: print("空气良好,适度户外运动") if 75 <= PM: print("空气污染,请小心!")
上述例子展示了用数字进行条件比较的例子,字符或字符串也可以用于条件比较。字符串比较本质上是字符串对应Unicode编码的比较,因此,字符串的比较按照字典顺序进行。例如,英文大写字符对应的 Unicode 编码比小写字符小。以下是一些例子:
print(4 < 5)
True
print("python" == "python")
True
print("Python" > "python")
False
二分支结构:if-else 语句
Python 中 if-else 语句用来形成二分支结构,语法格式如下:
if <条件> :   
<语句块1>
else :   
<语句块2>
语句块 1 是在 if 条件满足后执行的一个或多个语句序列,语句块 2 是 if 条件不满足后执行的语句序列。
二分支语句用于区分条件的两种可能,即 True 或者 False,分别形成执行路径。
我们使用 if-else 语句 对前面例子的代码进行改进:
PM = eval(input("请输入 PM2.5 数值:")) if PM >= 75: print("空气存在污染,请小心!") else: print("空气没有污染,可以开展户外运动")
二分支结构还有一种更简洁的表达方式, 适合通过判断返回特定值,语法格式如下:
<表达式1> if <条件> else <表达式2>
其中,表达式 1/2 一般是数字类型或字符串类型的一个值, 此时代码可以改为:
PM = eval(input("请输入 PM2.5 数值:")) print("空气{}污染!".format("存在" if PM >= 75 else "没有"))
if-else 的紧凑结构非常适合对特殊值处理的情况,其他例子如下:
count = 2 print(count if count != 0 else "不存在")
2
count = 0 print(coutn if count != 0 else "不存在")
不存在
多分支结构:if-elif-else 语句
Python 的 if-elif-else 描述多分支结构,语句格式如下:
if <条件1>:
  <语句块 1>
elif <条件2>:
  <语句块 2>
else:
  <语句块 N>
多分支结构是二分支结构的扩展,这种形式通常用于设置同一个判断条件的多条执行路径。
Python 依次评估寻找第一个结果为 True 的条件,执行该条件下的语句块,结束后跳过整个 if-elif-else 结构,执行后面的语句。如果没有任何条件成立,else 下面的语句块将被执行。else子句是可选的。
前面的例子通过多条独立的 if 语句对同一个变量 PM 进行判断,这种情况更适合多分支结构,改进后的代码如下:
PM = eval(input("请输入 PM2.5 数值:")) if 0 <= PM < 35: print("空气优质,快去户外运动!") elif 35 <= PM < 75: print("空气良好,适度户外运动") else: print("空气污染,请小心!")