Python程序的分支结构怎么用

寻技术 Python编程 2023年07月12日 122

本文小编为大家详细介绍“Python程序的分支结构怎么用”,内容详细,步骤清晰,细节处理妥当,希望这篇“Python程序的分支结构怎么用”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。

单分支结构:if 语句

Pythonif 语句的语法格式如下:

if <条件>: &emsp;
<语句块>

语句块是 if 条件满足后执行的一个或多个语句序列,语句块中语句通过与 if 所在行形成缩进表达包含关系。if 语句首先评估条件的结果值,如果结果为 True,则执行语句块中的语句序列,然后控制转向程序的下一条语句。 如果结果为 False,语句块中的语句会被跳过。

if 语句中语句块执行与否依赖于条件判断。但无论什么情况,控制都会转到 if 语句后与该语句同级别的下一条语句。

if 语句中条件部分可以使用任何能够产生 TrueFalse 的语句或函数。形成判断条件最常见的方式是采用关系操作符。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

处理: &emsp;&emsp;if PM2.5值 &ge; 275,打印空气污染警告 &emsp;&emsp;if 35 &le; PM2.5 值 < 75,打印空气质量良,建议适度户外运动 &emsp;&emsp;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 语句

Pythonif-else 语句用来形成二分支结构,语法格式如下:

if <条件> : &emsp;&emsp;
<语句块1>
else : &emsp;&emsp;
<语句块2>

语句块 1 是在 if 条件满足后执行的一个或多个语句序列,语句块 2if 条件不满足后执行的语句序列。

二分支语句用于区分条件的两种可能,即 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 语句

Pythonif-elif-else 描述多分支结构,语句格式如下:

if <条件1>:
&emsp;&emsp;<语句块 1>
elif <条件2>:
&emsp;&emsp;<语句块 2>
else:
&emsp;&emsp;<语句块 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("空气污染,请小心!")
关闭

用微信“扫一扫”