浅谈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("空气污染,请小心!")
到此这篇关于浅谈Python]程序的分支结构的文章就介绍到这了,更多相关Python分支结构内容请搜索以前的文章或继续浏览下面的相关文章希望大家以后多多支持!
相关文章