Python 循环基础:for、while、break、continue

文章目录

    • 前言
    • 一、循环到底是干嘛的?先把逻辑搞明白
    • 二、for循环:Python里最常用的"批量工具"
      • [2.1 for循环基础语法](#2.1 for循环基础语法)
      • [2.2 最简单的for循环示例](#2.2 最简单的for循环示例)
      • [2.3 遍历字符串:for循环也能拆文字](#2.3 遍历字符串:for循环也能拆文字)
      • [2.4 遍历字典:键、值、键值对全拿下](#2.4 遍历字典:键、值、键值对全拿下)
      • [2.5 for循环嵌套:处理多维数据](#2.5 for循环嵌套:处理多维数据)
    • 三、while循环:靠条件驱动的"循环选手"
      • [3.1 while循环基础语法](#3.1 while循环基础语法)
      • [3.2 基础while循环示例](#3.2 基础while循环示例)
      • [3.3 while循环的经典场景:用户输入校验](#3.3 while循环的经典场景:用户输入校验)
      • [3.4 死循环:while True的用法](#3.4 死循环:while True的用法)
    • 四、break:循环的"紧急刹车"
      • [4.1 break在for循环中的使用](#4.1 break在for循环中的使用)
      • [4.2 break在while循环中的使用](#4.2 break在while循环中的使用)
      • [4.3 嵌套循环中的break:只跳当前层](#4.3 嵌套循环中的break:只跳当前层)
    • 五、continue:循环的"跳过指令"
      • [5.1 continue在for循环中的使用](#5.1 continue在for循环中的使用)
      • [5.2 continue在while循环中的使用](#5.2 continue在while循环中的使用)
      • [5.3 continue实战场景:过滤无效数据](#5.3 continue实战场景:过滤无效数据)
    • [六、for vs while:到底该用哪个?](#六、for vs while:到底该用哪个?)
    • 七、循环常见坑点:2026年新手必避的雷
      • [7.1 while循环忘记更新条件,导致死循环](#7.1 while循环忘记更新条件,导致死循环)
      • [7.2 缩进错误导致循环逻辑混乱](#7.2 缩进错误导致循环逻辑混乱)
      • [7.3 break和continue用反](#7.3 break和continue用反)
      • [7.4 循环嵌套层级过多](#7.4 循环嵌套层级过多)
      • [7.5 循环内重复创建对象](#7.5 循环内重复创建对象)
    • [八、循环在2026 AI开发中的实际应用](#八、循环在2026 AI开发中的实际应用)
    • 九、总结

P.S. 目前国内还是很缺AI人才的,希望更多人能真正加入到AI行业,共同促进行业进步,增强我国的AI竞争力。想要系统学习AI知识的朋友可以看看我精心打磨的教程 http://blog.csdn.net/jiangjunshow,教程通俗易懂,高中生都能看懂,还有各种段子风趣幽默,从深度学习基础原理到各领域实战应用都有讲解,我22年的AI积累全在里面了。注意,教程仅限真正想入门AI的朋友,否则看看零散的博文就够了。

前言

在Python编程乃至整个AI开发、数据处理、自动化脚本编写的过程中,循环都是绕不开的基础核心。不管是遍历数据集、批量处理图片、训练模型时的迭代更新,还是写一个简单的批量计算脚本,都离不开for循环与while循环。很多刚入门的朋友觉得循环简单,随便写写就能跑,但真正写工程代码时才发现:死循环跳不出来、遍历逻辑混乱、循环嵌套看不懂、break和continue用反了导致程序逻辑全乱,这些问题比比皆是。

2026年的Python生态已经非常成熟,从基础语法到AI工程落地,循环依旧是最底层、最通用的逻辑控制方式。不管是用PyTorch训练模型,还是用Pandas处理百万行数据,循环的写法和逻辑思维都是通用的。今天这篇文章,我就用最接地气、带点段子的方式,把Python里的for、while、break、continue一次性讲透,从基础语法到实战坑点,再到AI场景下的应用,全部安排到位,保证小白也能彻底吃透。

一、循环到底是干嘛的?先把逻辑搞明白

在正式写代码之前,咱们先别着急敲键盘,先搞懂一个核心问题:循环存在的意义是什么?

举个生活里最通俗的例子:

你要给班级里50个同学每人发一颗糖。

  • 不使用循环:你喊一个名字,递一颗糖,重复50次手动操作,繁琐又容易漏人。
  • 使用循环:设定好"从第1个到第50个同学"的范围,程序自动重复"发糖"这个动作,直到所有人都发完。

放到编程里就是:把一段需要重复执行的代码,交给循环自动处理,省去手动重复编写的麻烦

在Python里,循环主要分两种:

  1. for循环:适合已知循环次数、遍历序列(列表、字符串、字典、数据集等)的场景;
  2. while循环:适合不知道循环次数,只知道循环终止条件的场景。

再搭配break和continue两个控制语句,就能实现精准控制循环的开始、暂停、跳过和结束,这四个知识点组合起来,就是Python循环的全部核心。

二、for循环:Python里最常用的"批量工具"

for循环是Python开发者使用频率最高的循环,没有之一。尤其是在AI数据处理、爬虫、文件批量读取中,for循环几乎是标配。

2.1 for循环基础语法

for循环的核心逻辑是:遍历可迭代对象,逐个取出元素,执行循环体代码

基础语法格式:

python 复制代码
for 临时变量 in 可迭代对象:
    循环体代码(需要重复执行的内容)

这里的可迭代对象,简单理解就是能一个一个往外拿东西的容器,比如列表、元组、字符串、range生成的数字序列、甚至2026年常用的数据集迭代器、PyTorch的数据加载器等。

2.2 最简单的for循环示例

先看一个最基础的例子,遍历数字序列:

python 复制代码
# 循环输出1到5的数字
for i in range(1, 6):
    print(f"当前数字:{i}")

执行结果:

复制代码
当前数字:1
当前数字:2
当前数字:3
当前数字:4
当前数字:5

这里的range(1,6)是Python内置函数,作用是生成1到5的整数序列(左闭右开,不包含结束值),这也是2026年Python基础编程中最常用的生成固定次数循环的方式。

再举一个遍历列表的例子,模拟批量处理AI数据集:

python 复制代码
# 模拟一批图像数据文件名
image_files = ["img1.jpg", "img2.jpg", "img3.jpg", "img4.jpg"]

# 批量遍历处理每张图片
for file in image_files:
    print(f"正在处理图片:{file}")

执行结果:

复制代码
正在处理图片:img1.jpg
正在处理图片:img2.jpg
正在处理图片:img3.jpg
正在处理图片:img4.jpg

这种写法在AI图像预处理中非常常见,批量读取图片、归一化、数据增强,都是用for循环遍历实现的。

2.3 遍历字符串:for循环也能拆文字

字符串本质上也是可迭代对象,for循环可以逐个取出字符:

python 复制代码
text = "AI2026"
for char in text:
    print(f"当前字符:{char}")

执行结果:

复制代码
当前字符:A
当前字符:I
当前字符:2
当前字符:0
当前字符:2
当前字符:6

2.4 遍历字典:键、值、键值对全拿下

在2026年的Python开发中,字典是存储配置信息、模型参数、API返回数据的常用容器,for循环遍历字典有三种方式:

  1. 遍历字典的键;
  2. 遍历字典的值;
  3. 遍历键值对。

示例代码:

python 复制代码
# 模拟AI模型配置参数
model_config = {
    "学习率": 0.001,
    "批次大小": 32,
    "训练轮次": 100,
    "优化器": "Adam"
}

# 遍历键
print("===遍历键===")
for key in model_config:
    print(key)

# 遍历值
print("\n===遍历值===")
for value in model_config.values():
    print(value)

# 遍历键值对
print("\n===遍历键值对===")
for key, value in model_config.items():
    print(f"{key}:{value}")

这种写法在读取模型超参数、处理接口返回的JSON数据时,几乎每天都会用到。

2.5 for循环嵌套:处理多维数据

AI领域中经常遇到二维、三维数据,比如二维数组、图像像素矩阵,这时候就需要嵌套for循环。

举个简单的二维列表示例:

python 复制代码
# 模拟3x3的图像像素矩阵
pixel_matrix = [
    [128, 255, 0],
    [64, 192, 32],
    [0, 128, 255]
]

# 嵌套循环遍历每个像素值
for row in pixel_matrix:
    for pixel in row:
        print(f"像素值:{pixel}", end="\t")
    print()

嵌套循环的逻辑就是:外层循环走一次,内层循环跑全部。就像看表格,先看第一行,再逐个看这一行的每一列,看完一行再看下一行。

三、while循环:靠条件驱动的"循环选手"

while循环和for循环不同,它不依赖可迭代对象,只看一个条件:条件为True,就执行循环体;条件为False,就结束循环。

3.1 while循环基础语法

语法格式非常简单:

python 复制代码
while 循环条件:
    循环体代码

核心逻辑:先判断条件,满足就执行,执行完再判断,直到条件不满足

3.2 基础while循环示例

比如循环输出1到5,用while实现:

python 复制代码
# 初始化计数器
i = 1
# 循环条件:i小于等于5
while i <= 5:
    print(f"当前数字:{i}")
    # 计数器自增,必须写,否则死循环
    i += 1

这里有一个关键点:必须在循环体内修改循环条件,否则会陷入死循环 。比如上面如果删掉i += 1,i永远是1,条件永远成立,程序就会一直打印,停不下来。

3.3 while循环的经典场景:用户输入校验

在2026年的Python交互程序、AI工具开发中,while循环常用来做用户输入校验,直到用户输入正确内容才退出:

python 复制代码
# 模拟AI模型启动密码校验
password = ""
while password != "AI2026":
    password = input("请输入启动密码:")
print("密码正确,模型启动成功!")

这个场景下,我们不知道用户会输错几次,所以用while循环最合适,for循环反而不方便。

3.4 死循环:while True的用法

有时候我们需要程序一直运行,直到手动触发终止条件,这时候就用while True

python 复制代码
while True:
    cmd = input("请输入指令(输入exit退出):")
    if cmd == "exit":
        break
    print(f"执行指令:{cmd}")

这种写法在AI服务端程序、实时数据监测脚本中非常常用,程序持续运行,等待指令或数据输入。

四、break:循环的"紧急刹车"

break是循环控制语句,作用只有一个:立即终止当前所在的循环,跳出循环体,执行循环后面的代码

不管是for还是while循环,只要执行到break,循环立刻结束,剩余的循环次数直接作废。

4.1 break在for循环中的使用

示例:找到数字3就停止循环:

python 复制代码
for i in range(1, 6):
    if i == 3:
        print("找到数字3,终止循环")
        break
    print(f"当前数字:{i}")

执行结果:

复制代码
当前数字:1
当前数字:2
找到数字3,终止循环

4.2 break在while循环中的使用

示例:计数器到3就停止:

python 复制代码
i = 1
while i <= 5:
    if i == 3:
        print("达到阈值,终止循环")
        break
    print(f"当前数字:{i}")
    i += 1

4.3 嵌套循环中的break:只跳当前层

很多小白容易踩坑:break只能终止自己所在的那一层循环,不会跳出外层循环。

示例:

python 复制代码
for i in range(1, 4):
    for j in range(1, 4):
        if j == 2:
            break
        print(f"i={i}, j={j}")

执行后只会跳出内层循环,外层循环依旧正常执行。

五、continue:循环的"跳过指令"

continue和break不同,它不是终止循环,而是跳过当前这一次循环,直接进入下一次循环判断

简单理解:break是"不干了,直接下班";continue是"这一次摸鱼,下一次继续干"。

5.1 continue在for循环中的使用

示例:跳过数字3,输出其他数字:

python 复制代码
for i in range(1, 6):
    if i == 3:
        print("跳过数字3")
        continue
    print(f"当前数字:{i}")

执行结果:

复制代码
当前数字:1
当前数字:2
跳过数字3
当前数字:4
当前数字:5

可以看到,数字3被跳过,循环没有终止,继续执行后面的数字。

5.2 continue在while循环中的使用

注意:while循环中使用continue时,一定要确保计数器自增代码在continue之前,否则会陷入死循环。

错误示例(死循环):

python 复制代码
i = 1
while i <= 5:
    if i == 3:
        continue
    print(i)
    i += 1

当i=3时,执行continue,跳过了i += 1,i永远是3,循环卡死。

正确写法:

python 复制代码
i = 1
while i <= 5:
    i += 1
    if i == 3:
        print("跳过数字3")
        continue
    print(f"当前数字:{i}")

5.3 continue实战场景:过滤无效数据

在AI数据处理中,经常需要过滤缺失值、异常值,这时候continue就派上用场:

python 复制代码
# 模拟一批包含缺失值的数据集
data_list = [12, None, 34, 0, 56, None, 78]

# 过滤缺失值,只处理有效数据
for data in data_list:
    if data is None:
        print("发现缺失值,跳过")
        continue
    print(f"处理有效数据:{data}")

这是2026年数据预处理中非常典型的用法,简洁高效。

六、for vs while:到底该用哪个?

很多新手纠结:同样的功能,用for还是while?这里给大家一个2026年Python工程开发中的通用选择标准:

  1. 优先用for循环的场景:

    • 遍历列表、字符串、字典、数据集、文件行;
    • 已知明确的循环次数;
    • AI数据遍历、批量文件处理、模型迭代训练。
  2. 必须用while循环的场景:

    • 不知道循环次数,只依赖条件判断;
    • 用户交互、实时监听、服务常驻程序;
    • 条件动态变化,无法提前确定循环次数。

简单总结:有范围、有容器用for;靠条件、不确定次数用while

七、循环常见坑点:2026年新手必避的雷

写循环时,新手最容易踩坑,我总结了几个高频错误,避开这些基本就能写出稳定的循环代码:

7.1 while循环忘记更新条件,导致死循环

这是最经典的错误,一定要在循环体内修改控制变量,让条件最终能变为False。

7.2 缩进错误导致循环逻辑混乱

Python靠缩进区分代码块,循环体代码必须统一缩进,否则要么报错,要么逻辑错乱。

7.3 break和continue用反

break是终止,continue是跳过,用反会导致程序完全不符合预期,写之前先想清楚逻辑。

7.4 循环嵌套层级过多

工程代码中,循环嵌套尽量不超过3层,否则可读性极差,还会影响性能,AI数据处理中可以用向量化操作替代深层嵌套循环。

7.5 循环内重复创建对象

在2026年的Python性能优化中,循环内尽量避免重复创建列表、模型实例等大对象,会严重拖慢运行速度,应提前初始化。

八、循环在2026 AI开发中的实际应用

循环不是单纯的语法玩具,在实际AI工程中用处极大:

  1. 模型训练迭代:训练轮次epoch用循环控制,每一轮遍历数据集更新参数;
  2. 数据批量预处理:for循环遍历图片、文本数据,做归一化、分词、增强;
  3. 超参数搜索:while或for循环遍历学习率、批次大小等参数,寻找最优组合;
  4. 自动化脚本:批量处理实验日志、导出模型结果、监测模型运行状态。

可以说,没有循环,AI模型训练、数据处理根本无法实现。

九、总结

Python循环的核心就是四个知识点:for、while、break、continue。

  • for循环:遍历可迭代对象,适合固定次数循环;
  • while循环:依赖条件判断,适合未知次数循环;
  • break:立即终止当前循环;
  • continue:跳过当前次循环,进入下一次。

学习循环没有捷径,多写案例、多踩坑、多实战,尤其是结合AI数据处理、小脚本练习,很快就能熟练掌握。基础打牢了,后面学习深度学习、机器学习框架时,才能轻松看懂底层迭代逻辑,写出高效稳定的代码。

P.S. 目前国内还是很缺AI人才的,希望更多人能真正加入到AI行业,共同促进行业进步,增强我国的AI竞争力。想要系统学习AI知识的朋友可以看看我精心打磨的教程 http://blog.csdn.net/jiangjunshow,教程通俗易懂,高中生都能看懂,还有各种段子风趣幽默,从深度学习基础原理到各领域实战应用都有讲解,我22年的AI积累全在里面了。注意,教程仅限真正想入门AI的朋友,否则看看零散的博文就够了。

相关推荐
hef2882 小时前
如何查找SQL字符串中字符数_掌握CHAR_LENGTH应用
jvm·数据库·python
AI效率工坊2 小时前
【Python实战】自动化生成PPT演示文稿:python-pptx+AI内容生成+图表嵌入
人工智能·python·自动化
小白学大数据2 小时前
Python 爬虫:拍卖网站列表页与详情页数据联动爬取
开发语言·爬虫·python
TechWayfarer2 小时前
RSAC 2026启示录:从IP归属到IP风险画像,风控系统如何防御住宅代理与AI攻击?
网络·人工智能·python·tcp/ip·ip
摇滚侠2 小时前
Groovy 中如何定义集合
java·开发语言·python
财经资讯数据_灵砚智能2 小时前
基于全球经济类多源新闻的NLP情感分析与数据可视化(夜间-次晨)2026年4月13日
人工智能·python·信息可视化·自然语言处理·ai编程
reasonsummer2 小时前
【教学类-134-01】20260414 Python制作童话故事音频
开发语言·python
Irene19912 小时前
推荐学 Python 的编辑器:PyCharm(附:下载安装教程)
python·编辑器
郝学胜-神的一滴2 小时前
Python 多线程编程从入门到精通:原理+实战+最佳实践
开发语言·网络·python·pycharm