0

0

Python循环结构教程_forwhile循环用法详解

舞夢輝影

舞夢輝影

发布时间:2026-01-10 17:59:02

|

290人浏览过

|

来源于php中文网

原创

python循环结构主要由for和while实现:for用于遍历已知长度的可迭代对象(如列表、字符串、range),支持break、continue和else;while依据条件动态执行,需确保循环变量更新以防死循环。

python循环结构教程_forwhile循环用法详解

Python 中的循环结构主要靠 for 和 while 两种语句实现,它们用途不同但互补:for 适合遍历已知长度的序列(如列表、字符串、range),while 更适合依赖条件动态执行的场景(比如用户输入验证、实时数据读取)。

for 循环:遍历可迭代对象

for 循环本质是依次取出可迭代对象中的每个元素并执行代码块。最常见用法是配合 range() 生成数字序列,或直接遍历列表、元组、字符串等。

  • 基本语法:for 变量 in 可迭代对象: 后缩进写要重复执行的语句
  • range(5) 生成 0 到 4 的整数;range(2, 8) 生成 2~7;range(0, 10, 2) 步长为 2,生成偶数 0、2、4、6、8
  • 遍历字符串时,每次取一个字符;遍历字典默认取键,想取值可用 dict.values()键值对一起用 dict.items()
  • 常用搭配:break 提前退出、continue 跳过本次、else 子句(仅在循环正常结束时执行,不因 break 触发)

while 循环:条件满足时持续执行

while 循环先判断条件表达式是否为 True,若成立则执行循环体,再重新判断,直到条件为 False 或遇到 break 才停止。关键是要确保循环变量在内部被修改,否则容易陷入死循环。

Shell脚本编写基础 中文WORD版
Shell脚本编写基础 中文WORD版

Shell本身是一个用C语言编写的程序,它是用户使用Linux的桥梁。Shell既是一种命令语言,又是一种程序设计语言。作为命令语言,它交互式地解释和执行用户输入的命令;作为程序设计语言,它定义了各种变量和参数,并提供了许多在高级语言中才具有的控制结构,包括循环和分支。它虽然不是Linux系统核心的一部分,但它调用了系统核心的大部分功能来执行程序、建立文件并以并行的方式协调各个程序的运行。因此,对于用户来说,shell是最重要的实用程序,深入了解和熟练掌握shell的特性极其使用方法,是用好Linux系统

下载
  • 基本语法:while 条件表达式: 后缩进写循环体
  • 典型场景:让用户反复输入直到符合要求(如输入正整数)、处理队列直到为空、等待某状态出现(如文件生成完成)
  • 务必检查循环变量更新逻辑——比如 i = 0; while i 就缺少 <code>i += 1,会无限打印 0
  • 和 for 类似,支持 breakcontinue;while 也有 else,表示条件首次为 False 时执行(不是被 break 中断时)

for 和 while 的选择建议

选哪个不取决于“哪个更高级”,而看任务本质:

立即学习Python免费学习笔记(深入)”;

  • 知道要跑多少次、或者有明确的遍历目标(如处理名单里的每个人、计算列表中所有数的平方),优先用 for
  • 不知道要执行几次,只清楚“什么时候该停”(如“直到用户输入 quit”、“直到服务器返回成功状态”),就用 while
  • 有些问题两者都能解,比如累加 1 到 100:for 配 range 更简洁;while 需手动维护计数器,略啰嗦但逻辑更显式
  • 初学者易犯的错:用 while 做本该用 for 的事(增加出错概率),或在 for 中过度依赖索引(应直接遍历元素,需要索引时用 enumerate()

嵌套与实际小例子

循环可以互相嵌套,比如用 for 实现九九乘法表,或用 while 包裹输入校验逻辑。

  • 九九乘法表片段:for i in range(1, 10): for j in range(1, i+1): print(f"{j}×{i}={i*j}", end=" ") —— 外层控制行,内层控制每行几个算式
  • 安全输入示例:while True: age = input("请输入年龄:"); if age.isdigit() and int(age) > 0: break —— 确保输入合法才继续
  • 注意缩进层级,嵌套过深(超三层)建议拆成函数,提升可读性

热门AI工具

更多
DeepSeek
DeepSeek

幻方量化公司旗下的开源大模型平台

豆包大模型
豆包大模型

字节跳动自主研发的一系列大型语言模型

通义千问
通义千问

阿里巴巴推出的全能AI助手

腾讯元宝
腾讯元宝

腾讯混元平台推出的AI助手

文心一言
文心一言

文心一言是百度开发的AI聊天机器人,通过对话可以生成各种形式的内容。

讯飞写作
讯飞写作

基于讯飞星火大模型的AI写作工具,可以快速生成新闻稿件、品宣文案、工作总结、心得体会等各种文文稿

即梦AI
即梦AI

一站式AI创作平台,免费AI图片和视频生成。

ChatGPT
ChatGPT

最最强大的AI聊天机器人程序,ChatGPT不单是聊天机器人,还能进行撰写邮件、视频脚本、文案、翻译、代码等任务。

相关专题

更多
python中print函数的用法
python中print函数的用法

python中print函数的语法是“print(value1, value2, ..., sep=' ', end=' ', file=sys.stdout, flush=False)”。本专题为大家提供print相关的文章、下载、课程内容,供大家免费下载体验。

192

2023.09.27

python print用法与作用
python print用法与作用

本专题整合了python print的用法、作用、函数功能相关内容,阅读专题下面的文章了解更多详细教程。

17

2026.02.03

if什么意思
if什么意思

if的意思是“如果”的条件。它是一个用于引导条件语句的关键词,用于根据特定条件的真假情况来执行不同的代码块。本专题提供if什么意思的相关文章,供大家免费阅读。

836

2023.08.22

while的用法
while的用法

while的用法是“while 条件: 代码块”,条件是一个表达式,当条件为真时,执行代码块,然后再次判断条件是否为真,如果为真则继续执行代码块,直到条件为假为止。本专题为大家提供while相关的文章、下载、课程内容,供大家免费下载体验。

104

2023.09.25

java中break的作用
java中break的作用

本专题整合了java中break的用法教程,阅读专题下面的文章了解更多详细内容。

120

2025.10.15

java break和continue
java break和continue

本专题整合了java break和continue的区别相关内容,阅读专题下面的文章了解更多详细内容。

261

2025.10.24

java break和continue
java break和continue

本专题整合了java break和continue的区别相关内容,阅读专题下面的文章了解更多详细内容。

261

2025.10.24

js 字符串转数组
js 字符串转数组

js字符串转数组的方法:1、使用“split()”方法;2、使用“Array.from()”方法;3、使用for循环遍历;4、使用“Array.split()”方法。本专题为大家提供js字符串转数组的相关的文章、下载、课程内容,供大家免费下载体验。

658

2023.08.03

Golang 测试体系与代码质量保障:工程级可靠性建设
Golang 测试体系与代码质量保障:工程级可靠性建设

Go语言测试体系与代码质量保障聚焦于构建工程级可靠性系统。本专题深入解析Go的测试工具链(如go test)、单元测试、集成测试及端到端测试实践,结合代码覆盖率分析、静态代码扫描(如go vet)和动态分析工具,建立全链路质量监控机制。通过自动化测试框架、持续集成(CI)流水线配置及代码审查规范,实现测试用例管理、缺陷追踪与质量门禁控制,确保代码健壮性与可维护性,为高可靠性工程系统提供质量保障。

24

2026.02.28

热门下载

更多
网站特效
/
网站源码
/
网站素材
/
前端模板

精品课程

更多
相关推荐
/
热门推荐
/
最新课程
最新Python教程 从入门到精通
最新Python教程 从入门到精通

共4课时 | 22.5万人学习

Django 教程
Django 教程

共28课时 | 4.7万人学习

SciPy 教程
SciPy 教程

共10课时 | 1.8万人学习

关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2026 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号