Administrator
发布于 2026-09-11 / 11 阅读
0
0

Python 循环:for/while 循环、break/continue

Python 循环:for/while 循环、break/continue

一、前言

前面我们掌握了顺序执行代码、if条件分支语句,能够让程序根据条件选择性执行代码。但在实际开发中,经常需要重复执行某一段代码,比如批量打印数据、重复校验信息、遍历内容等。单纯依靠顺序和分支代码无法实现重复操作,本章我们学习Python循环语法,掌握for、while两大循环结构,以及break、continue循环控制关键字,实现代码批量重复执行,是Python自动化、批量处理数据的核心基础。

二、while 基础循环(条件循环)

while循环属于条件循环,只要条件结果为True,就会持续执行内部代码块,直到条件为False时停止循环,适合未知循环次数的场景。

语法规则

循环条件成立(结果为 True),持续执行内部缩进代码;条件为 False,直接跳出循环。

# 基础while循环语法
while 条件表达式:
    # 循环体代码(必须缩进)
    重复执行的代码

基础示例:打印1-5数字

num = 1
# 当num小于等于5时,持续循环
while num <= 5:
    print(f"当前数字:{num}")
    # 每次循环让数字+1,避免死循环
    num += 1

核心要点

  • 条件后必须加冒号 :,否则报语法错误

  • 循环体代码必须缩进4个空格,无缩进或缩进不统一会报错

  • 必须设置循环终止条件(变量自增/自减),否则会出现死循环

  • 条件结果只能是 True / False

三、for 基础循环(遍历循环)

for循环属于遍历循环,主要用于遍历序列数据(字符串、列表、数字区间等),按顺序逐个读取元素并执行循环体,适合已知循环次数的场景,是开发中使用频率最高的循环。

语法规则

# for循环基础语法
for 变量 in 可遍历对象:
    # 循环体代码(必须缩进)
    重复执行的代码

常用场景1:配合range()遍历数字区间

range(起始值, 结束值, 步长),默认起始值为0、步长为1,遍历范围左闭右开(不包含结束值)。

# 打印1-5数字
for i in range(1, 6):
    print(f"遍历数字:{i}")

常用场景2:遍历字符串

# 逐个打印字符串中的字符
text = "Python循环"
for char in text:
    print(f"单个字符:{char}")

核心要点

  • in 后必须是可遍历对象(数字序列、字符串、列表等)

  • 同样遵循冒号、缩进语法规则,缺一不可

  • 循环变量会自动依次赋值,无需手动增减

四、循环控制:break 终止循环

break 作用:直接跳出当前整个循环,终止所有循环操作,后续循环不再执行,适用于满足指定条件后立刻停止循环的场景。

示例:找到指定数字后终止循环

# 遍历1-10,遇到5立刻停止循环
for i in range(1, 11):
    if i == 5:
        # 终止整个循环
        break
    print(f"正常遍历:{i}")

运行结果:只会打印1-4,匹配到5后直接结束循环,后续6-10不再遍历。

五、循环控制:continue 跳过本次循环

continue 作用:跳过当前这一次循环,直接进入下一次循环,不会终止整体循环,后续循环照常执行。

示例:跳过数字5,继续循环

# 遍历1-10,跳过数字5
for i in range(1, 11):
    if i == 5:
        # 跳过本次循环,直接进入下一次
        continue
    print(f"正常遍历:{i}")

运行结果:打印1-4、6-10,唯独跳过数字5,循环不会终止。

六、循环嵌套(循环里套循环)

支持for、while循环互相嵌套,适用于多层重复操作场景(如打印九九乘法表、批量二维数据处理),核心是严格区分缩进层级,外层循环执行一次,内层循环执行完整一轮。

基础嵌套示例

# 外层循环控制行数
for i in range(1, 4):
    print(f"第{i}轮外层循环")
    # 内层循环控制单次内层操作
    for j in range(1, 3):
        print(f"  内层循环:{j}")

七、综合实战:简易密码重试程序

整合while循环、break、if条件判断,实现密码错误可重试,输入正确则退出循环的功能。

# 简易密码重试系统,最多重试3次
count = 0
while count < 3:
    pwd = input("请输入密码:")
    # 正确密码:123456
    if pwd == "123456":
        print("密码正确,登录成功!")
        # 密码正确,终止循环
        break
    else:
        count += 1
        print(f"密码错误,还剩余{3-count}次机会")
# 3次全部输错,锁定登录
if count == 3:
    print("错误次数过多,登录已锁定")

八、新手常见报错与问题

  • 循环条件末尾忘记加冒号,直接报语法错误

  • 循环体代码未缩进、缩进混乱,代码层级报错

  • while循环未设置变量更新,导致死循环程序卡死

  • 混淆break和continue:break终止全程循环,continue仅跳过单次循环

  • for循环遍历非可迭代对象,触发类型报错

  • 循环嵌套时缩进层级错误,导致循环逻辑混乱

九、下期预告

下一篇:Python 列表、元组、字典、集合四大容器全解,学会批量存储多条数据,搭配循环实现海量数据批量处理。


评论