Python判断和循环语句的分析与应用

咖啡半糖
咖啡半糖
发布时间:2026-10-12| 7人浏览过
原创

本文系统讲解Python中的条件判断与循环语句。通过拆解if/elif/else分支逻辑、while与for循环运行机制,以及break与continue流程控制指令,配合标准代码示例与嵌套循环实战,帮助开发者掌握程序流转的核心语法,避免死循环并提升代码执行效率。

一、条件判断语句的语法结构

Python的条件判断依赖三个核心关键字:if、elif和else。它们可根据业务逻辑进行灵活组合,构建多分支决策树。所有条件表达式末尾需加冒号,且伴随的代码块必须严格缩进(推荐4个空格或1个Tab)。

1、单一if判断

仅当括号内的布尔值为真时,才会执行后续缩进的代码块。常用于前置条件校验或单路触发。

if True:
    语句块
  • 缩进是Python语法的强制要求,缩进不一致会引发 IndentationError。
  • Tab 键默认代表4个空格,Shift + Tab 用于取消缩进。

2、if...else 双分支

适用于非此即彼的逻辑场景。else 无需条件判断,其隐式含义为“上述所有条件均不成立时执行”。else 必须与 if 保持相同缩进层级。

if 条件A:
    语句块一
else:
    语句块二

3、if...elif...else 多级判断

支持连续多层条件筛查。只要命中其中一个条件,执行对应代码块后即跳出整个判断结构,后续条件不再评估。

a = 1
if a > 30:
    print('这里是if语句')
elif a > 20:
    print('这里是elif语句')
elif a > 10:
    print('这里是elif语句二')
else:
    print('这里是else语句') # 所有条件都不满足,执行此处

执行上述代码将输出:
这里是else语句

二、循环语句的运行机制

循环用于重复执行特定代码块。Python主要提供基于计数器的 while 和基于迭代的 for 两种结构。

1、while 计数循环

由变量初始化、条件判断、计数器累加三部分构成。若条件永远为真且缺乏终止逻辑,将导致无限死循环,占用大量CPU资源。

a = 0  # 定义初始变量
while a < 5:  # 条件判断:为True则持续执行
    print('hello world')
    a = a + 1   # 计数器递增,确保循环能够结束

输出结果:
hello world
hello world
hello world
hello world
hello world

2、while...else 正常退出机制

while-else 并非错误处理,而是状态反馈:else 仅在 while 因条件变为假而正常结束时触发。若循环中途被 break 强行中断,else 块将被跳过。

# 正常执行完毕
a = 0
while a < 5:
    print('hello world')
    a = a + 1
else:
    print('我是else语句(正常结束触发)')
# 异常中断执行
a = 0
while a < 5:
    print('hello world')
    a = a + 1
    if a == 3:
        break
else:
    print('我是else语句') # 不会输出,因为触发了break

3、for 可迭代对象遍历

for 循环专为遍历序列或集合设计,底层自动管理游标与终止条件,天然杜绝死循环风险。常用内置函数 range() 生成整数序列,遵循左闭右开原则(含起点,不含终点)。

for i in range(1, 5):	# 包含1,不包含5
    print(i)

输出结果:
1
2
3
4

三、流程控制指令 break 与 continue

两者用于在循环运行时动态干预执行流,但作用范围截然不同。

1、break 强制终止整个循环

立即跳出当前所在的最内层循环,程序继续执行循环体外的下一条语句。

for i in range(1, 10):
    if i == 6:
        break	# 命中条件后直接终止整个for循环
    print(i)

输出结果(未打印6及之后的数字):
1
2
3
4
5

2、continue 跳过本次迭代

结束当前轮次的剩余代码,直接进入下一次循环的条件判断与变量更新。

for i in range(1, 10):
    if i == 6:
        continue	# 跳过当前循环,不执行后续的print(i)
    print(i)

输出结果(6被过滤):
1
2
3
4
5
7
8
9

四、综合实战:九九乘法表

嵌套循环是理解外层与内层执行频次的关键。以下代码演示双层 for 循环的结构化输出:

for i in range(1, 10):			# 外层控制行数(共9行)
    for j in range(1, i+1):		# 内层控制每行的列数
        print('{}*{}={}'.format(j, i, i*j), end=' ') # end='' 防止换行,使同行计算结果并列
    print()    # 每行打印完成后手动换行,进入下一层外层循环

控制台将按规范输出对齐的乘法表矩阵。

五、运行状态与注意事项

在实际开发中,建议始终为 while 循环预设安全边界与递减/递增步进,避免因逻辑遗漏导致的进程卡死。对于已知固定次数的遍历任务,优先选择 for 循环以提升可读性。熟练运用 break 与 continue 可大幅精简条件嵌套层级。

以上就是Python判断和循环语句分析与应用的具体内容,更多关于Python基础语法与流程控制的资料请关注本站其它相关文章!

相关标签:

免责声明:本文内容仅供参考,不代表本站观点。转载或引用请注明出处。

Python 相关产品和应用

全部下载
Selenium

Selenium

4.51.0 · Windows

用于浏览器自动化和 Web 测试的 Python 工具。

scikit-learn

scikit-learn

1.9.1 · Windows

常用 Python 机器学习算法与模型评估工具库。

Black

Black

26.10.1 · Windows

强调一致性的 Python 自动代码格式化工具。

Ruff

Ruff

0.17.1 · macOS

由 Rust 编写的高速 Python 代码检查和格式化工具。

pytest

pytest

9.1.1 · Windows

简洁而强大的 Python 自动化测试框架。

FastAPI

FastAPI

0.146.0 · Windows

高性能 Python API 框架,支持类型提示和自动接口文档。

Flask

Flask

3.1.3 · Windows

轻量灵活的 Python Web 应用框架。

Django

Django

6.1.2 · Windows

成熟的 Python Web 框架,适合构建内容站点和业务系统。

Spyder

Spyder

6.1.7 · Windows

面向科学计算与数据分析的 Python 集成开发环境。

SciPy

SciPy

1.18.1 · Windows

面向科学、工程和技术计算的 Python 算法库。