news 2026/6/15 18:55:49

Python系列基础教程(四)Python while与for循环

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
Python系列基础教程(四)Python while与for循环

一、课程前言

循环结构用于重复执行一段代码,是简化重复操作、实现批量处理与持续交互的核心语法。本节从循环的基础作用出发,依次讲解while条件循环、for遍历循环,配合range函数、break、continue实现精细化控制,再扩展循环嵌套与else用法,结合输入函数完成交互程序,所有语法严格遵循Python缩进规则,代码可直接运行验证,为后续容器遍历、数据批量处理奠定基础。

二、循环结构的核心作用与应用场景

循环的核心价值是减少重复代码,实现代码复用,适用于固定次数重复、条件满足持续执行、批量数据遍历等场景,如数值累加、数据遍历、菜单交互、批量输出等操作,均依赖循环结构完成。

三、while循环基础语法与执行流程

while循环根据条件表达式的结果决定是否执行代码块,条件为True则执行,为False则退出循环,语法结构:while 条件表达式: 缩进执行代码
执行流程:判断条件→条件为True执行代码→再次判断条件→循环直至条件为False。

# 基础while循环:输出3次内容count=1whilecount<=3:print("当前循环次数:",count)count+=1

四、while循环条件更新与无限循环规避

while循环必须在代码块内更新循环条件,否则条件永久为True,形成无限循环(死循环),程序会持续执行无法退出。手动终止无限循环可使用快捷键Ctrl+C。

# 正确:条件逐步更新,循环可正常结束num=5whilenum>0:print("数值:",num)num-=1# 无限循环示例(禁止常规使用)# while True:# print("持续执行")

五、for循环基础语法与序列遍历

for循环侧重遍历可迭代对象(如数字序列、字符串、后续容器),逐次取出对象中的元素,执行对应代码,语法结构:for 变量 in 可迭代对象: 缩进执行代码,无需手动控制循环条件,遍历完成自动退出。

# 遍历字符串forcharin"Python":print("当前字符:",char)# 遍历数字序列(配合range)foriinrange(3):print("序列元素:",i)

六、range()函数完整用法

range()是Python内置函数,用于生成连续整数序列,是for循环最常用的配合工具,支持三种参数形式:

  1. range(stop):生成0到stop-1的序列
  2. range(start, stop):生成start到stop-1的序列
  3. range(start, stop, step):指定起始、结束、步长生成序列
# 单参数:0-4foriinrange(5):print(i)# 双参数:2-5foriinrange(2,6):print(i)# 三参数:1-9,步长2foriinrange(1,10,2):print(i)

七、break语句:终止整个循环

break用于强制终止当前所在循环,无论循环条件是否满足,执行break后循环立即结束,程序跳转至循环后代码执行。

# break终止循环count=1whilecount<=5:ifcount==3:breakprint("count值:",count)count+=1print("循环已终止")# for循环中使用breakforiinrange(5):ifi==2:breakprint(i)

八、continue语句:跳过当前循环周期

continue用于跳过当前次循环的剩余代码,直接进入下一次循环判断,不会终止整个循环,仅跳过单次执行。

# continue跳过单次循环count=0whilecount<5:count+=1ifcount==3:continueprint("count值:",count)# for循环中使用continueforiinrange(5):ifi==2:continueprint(i)

九、循环与else联用

循环可搭配else语句,else代码块仅在循环正常结束(未被break强制终止)时执行,若循环因break退出,else不执行。

# while+elsenum=1whilenum<=3:print(num)num+=1else:print("循环正常结束")# for+else,break触发则else不执行foriinrange(3):ifi==2:breakprint(i)else:print("此段代码不会执行")

十、嵌套循环基础语法与执行规则

嵌套循环指在一个循环内部编写另一个循环,外层循环每执行一次,内层循环完整执行所有周期,需严格区分缩进层级,适用于二维数据、矩阵打印等场景。

# 双层嵌套循环:打印简易矩形foriinrange(3):forjinrange(4):print("*",end=" ")print()

十一、循环常见语法与逻辑错误

  1. 缩进错误:循环代码块未缩进或缩进不一致,触发语法报错
  2. 条件缺失更新:while循环未修改变量,导致无限循环
  3. break/continue缩进错误:作用域偏离预期
  4. range参数错误:结束值小于起始值且步长为正,无序列生成
  5. 循环变量冲突:嵌套循环使用同名变量,导致逻辑混乱

十二、input输入与循环结合交互

通过循环配合input,实现持续接收用户输入、重复执行操作的交互功能,是控制台程序的常用结构。

# 循环接收输入,输入0退出whileTrue:num=int(input("请输入数字(输入0退出):"))ifnum==0:print("程序退出")breakprint("输入的数字为:",num)

十三、综合实战案例

整合while、for、range、break、continue,实现1-100偶数求和与数字查找功能,覆盖本课核心知识点。

# 综合案例1:1-100偶数求和total=0foriinrange(1,101):ifi%2!=0:continuetotal+=iprint("1-100偶数总和:",total)# 综合案例2:while循环查找指定数字target=7current=1whilecurrent<=10:ifcurrent==target:print("找到目标数字:",current)breakprint("当前数字:",current)current+=1else:print("未找到目标数字")

十四、本课核心知识点总结

  1. 循环用于重复执行代码,while依赖条件判断,for侧重序列遍历
  2. while循环必须更新条件,避免无限循环,可通过Ctrl+C手动终止死循环
  3. range()支持单、双、三参数,生成整数序列,是for循环核心配合工具
  4. break强制终止整个循环,continue仅跳过当前次循环,二者作用域均为当前层循环
  5. 循环+else仅在正常结束时执行,break触发则else不执行
  6. 嵌套循环需严格区分缩进,外层每执行一次,内层完整遍历
  7. 常见错误集中在缩进、条件更新、关键字作用域,编写时需重点校验
  8. 循环与input结合可实现持续交互,是基础控制台程序的核心结构

本节内容是Python批量处理与重复逻辑的基础,所有示例代码均可直接复制执行,熟练掌握循环语法与控制关键字,可大幅简化重复操作代码,为后续列表、字典等容器的遍历与操作提供核心支撑。

版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/6/15 12:14:46

【计算机毕设】java-springboot+vue“漫画之家”系统毕业设计

&#x1f49f;博主&#xff1a;程序员小俊&#xff1a;CSDN作者、博客专家、全栈领域优质创作者 &#x1f49f;专注于计算机毕业设计&#xff0c;大数据、深度学习、Java、小程序、python、安卓等技术领域 &#x1f4f2;文章末尾获取源码数据库 &#x1f308;还有大家在毕设选题…

作者头像 李华
网站建设 2026/6/15 13:59:41

用户行为热点:登录峰值测试与优化

‌用户行为热点与登录峰值挑战在数字化时代&#xff0c;用户行为热点如促销活动、节假日或突发事件常引发登录峰值——即系统在短时间内承受高并发用户登录请求。对软件测试从业者而言&#xff0c;这不仅关乎系统稳定性&#xff0c;还直接影响用户体验和业务连续性。据统计&…

作者头像 李华
网站建设 2026/6/15 13:15:56

GNSS与单北斗变形监测技术的应用现状分析与未来发展方向

本文旨在分析GNSS变形监测一体机与单北斗变形监测系统的当前应用现状及未来的发展趋势。从技术特点到市场需求&#xff0c;单北斗变形监测已在基础设施管理中扮演重要角色。重点探讨了单北斗的原理&#xff0c;包括它在桥梁、大坝和地质灾害监测中的应用&#xff0c;及其提供的…

作者头像 李华
网站建设 2026/6/15 13:14:22

【swiftUI】实现智能可收缩日历(单行/全月切换)

一、 核心特性 智能显示模式&#xff1a;收起状态--仅显示当前日期所在的整周&#xff08;7天&#xff09;&#xff1b;展开状态--显示完整月份的日历网格&#xff1b;平滑的动画过渡效果 数据一致性&#xff1a;始终显示当前月份的数据&#xff1b;收起时自动定位到当前周&am…

作者头像 李华
网站建设 2026/6/15 8:16:29

MemOS开源框架实战:构建基于Graph的记忆图谱,让AI具备长期记忆能力

MemOS是一款基于Graph的记忆开源项目&#xff0c;通过TreeTextMemory实现结构化记忆存储与关联。本文详细介绍了如何在LangChain1.x框架中集成MemOS的记忆图谱能力&#xff0c;包括构建带记忆的ChatBot、体验记忆的自动重组功能&#xff0c;以及通过Middleware机制实现无侵入式…

作者头像 李华
网站建设 2026/6/15 12:19:20

windows QT项目

一、1、2、在纯linux环境下用QTCreator这个IDE去编项目&#xff1b;但是如果在windows上编写qt项目&#xff0c;VS这个IDE还是比QTCreator要强大很多&#xff0c;而且VS编写的QT项目&#xff0c;仍然可以移植到Linux等平台上&#xff0c;不影响跨平台特性&#xff01;&#xff…

作者头像 李华