Python if 条件语句详解
if 语句是 Python 编程语言中用于控制程序流程的核心结构。它允许代码根据特定条件的真假来决定执行哪一部分逻辑。掌握 if 语句的用法对于编写灵活、高效的 Python 程序至关重要。
1. 基本语法与规则
if 语句的一般语法形式如下:
if 表达式 1:
语句块
表达式 :
语句块
:
语句块
Python if 语句是控制程序流程的核心结构,支持单分支、双分支及多分支判断。文章详细讲解了 if 语法格式、缩进规则、布尔值判定标准(如空值、数字 0 视为 False)。涵盖 if-else、if-elif-else 结构,嵌套逻辑,三元运算符写法,以及 and/or/not 多重条件组合。此外补充了 pass 占位符用法、常见错误规避及最佳实践建议,帮助开发者编写清晰高效的逻辑判断代码。

if 语句是 Python 编程语言中用于控制程序流程的核心结构。它允许代码根据特定条件的真假来决定执行哪一部分逻辑。掌握 if 语句的用法对于编写灵活、高效的 Python 程序至关重要。
if 语句的一般语法形式如下:
if 表达式 1:
语句块
表达式 :
语句块
:
语句块

微信公众号「极客日志」,在微信中扫描左侧二维码关注。展示文案:极客日志 zeeklog
解析常见 curl 参数并生成 fetch、axios、PHP curl 或 Python requests 示例代码。 在线工具,curl 转代码在线工具,online
将字符串编码和解码为其 Base64 格式表示形式即可。 在线工具,Base64 字符串编码/解码在线工具,online
将字符串、文件或图像转换为其 Base64 表示形式。 在线工具,Base64 文件转换器在线工具,online
将 Markdown(GFM)转为 HTML 片段,浏览器内 marked 解析;与 HTML转Markdown 互为补充。 在线工具,Markdown转HTML在线工具,online
将 HTML 片段转为 GitHub Flavored Markdown,支持标题、列表、链接、代码块与表格等;浏览器内处理,可链接预填。 在线工具,HTML转Markdown在线工具,online
通过删除不必要的空白来缩小和压缩JSON。 在线工具,JSON 压缩在线工具,online
关键规则:
elif 是 else if 的缩写,else 表示默认分支。无论表达式的值是什么类型,if 语句都能判断它是 True 或 False。理解哪些值被视为 False(Falsy)非常重要:
True 和 False。0、0.0 为 False,其它数值为 True。None 为 False。示例代码:
print(bool("") # False
print(bool([])) # False
print(bool({})) # False
print(bool(None)) # False
print(bool(0)) # False
print(bool("Hello"))# True
print(bool([1])) # True
由关键字 if、条件表达式、语句块三部分组成。仅当条件满足时执行。
x = 90
if x >= 90:
print("成绩优秀")
提供'否则'的逻辑路径。如果表达式为 True 执行 if 分支,否则执行 else 分支。
x = 80
if x >= 90:
print("A")
else:
print("D")
支持多个中间分支。从上往下依次判断,只执行第一个为 True 的分支;若全为 False 且存在 else,则执行 else。
x = 50
if x >= 90:
print("A")
elif x >= 80:
print("B")
elif x >= 60:
print("C")
else:
print("D")
if 语句可以嵌套使用,即在 if、elif、else 分支的语句块中还可以使用 if 语句。适用于复杂的多层逻辑判断。
x = 50
if x >= 60:
if x >= 90:
print("A")
elif x >= 80:
print("B")
else:
print("C")
else:
print("D")
注意:过度嵌套会降低代码可读性,建议尽量扁平化逻辑或使用提前返回(Guard Clauses)。
条件表达式也称为三元运算符,用于简化简单的 if-else 赋值逻辑。
语法:
表达式 2 if 表达式 1 else 表达式 3
示例:
x = 60
y = 80
a = x + 10 if x > y else y - 100
print(a) # 输出 70
等价的传统写法:
if x > y:
a = x + 10
else:
a = y - 100
结合 and、or、not 运算符可实现复杂的逻辑组合。
示例:
x = 140
y = '物理'
if 90 <= x <= 100 and y == '数学':
print("数学:A")
elif 135 <= x <= 150 and y == '物理':
print("物理:A")
else:
print("非统计科目或成绩不是 A~")
pass 语句表示空语句,不做任何事情,一般起到占位作用。在定义函数、类或条件分支时,如果暂时不需要实现具体逻辑,可以使用 pass 避免语法错误。
x = 60
y = 80
if x > y:
pass
else:
a = y
IndentationError。if 行尾忘记加 : 会引发 SyntaxError。= 代替 ==,虽然语法合法但逻辑错误(除非使用 walrus operator :=)。else 嵌套。通过合理使用 if 语句及其变体,开发者可以构建出健壮且易维护的程序逻辑。