从零开始:Python语言基础之循环结构(for/while)

python的循环结构(while与for) python的循环结构(while与for) 在日常生活中经常会遇到一些有规律的重复操作,例如,输出从1到100的自然数。如果使用顺序结构来实现这个程序,那么需要使用100个print语句。其实这些语句都是重复执行的,也只需要使用一个循环语句就可以代替这100个语句。在Python中的循环语句也有while和for 两种,首先来看一下while的用法,while 循环语句包含以下两个部分。 (1)... 阅读详情

一、for循环:基于迭代的循环逻辑

 

 for 循环的设计初衷是遍历可迭代对象( iterable ),通过依次提取对象中的元素执行循环体。其语法结构如下:

 

for 变量名 in 可迭代对象:

    循环体语句

 

 

其中,可迭代对象是指能够被 for 循环逐个访问的对象,常见的包括列表、元组、字符串、字典、集合以及生成器等。

 

1. 遍历基础数据类型

 

列表遍历

 
fruits = ["apple", "banana", "cherry"]
for fruit in fruits:
    print(fruit)
 

执行过程中, fruit 变量会依次被赋值为 "apple" 、 "banana" 、 "cherry" ,每次迭代都会执行 print(fruit) 语句。

 

字符串遍历

text = "Python"
for char in text:
    print(char)

字符串本质上是字符的序列, for 循环会将每个字符依次赋给 char 变量,实现字符级别的操作。

 

字典遍历

student = {"name": "Alice", "age": 20, "major": "Computer Science"}
# 遍历键
for key in student:
    print(key)
# 遍历值
for value in student.values():
    print(value)
# 同时遍历键值对
for key, value in student.items():
    print(f"{key}: {value}")
 

字典遍历可通过 keys() 、 values() 、 items() 方法分别获取键、值、键值对,其中 items() 返回的元组需使用两个变量接收。

 

2. range()函数的深度应用

 

 range() 函数用于生成整数序列,其语法有三种形式:

 

① range(stop) :生成从0到 stop-1 的整数序列

② range(start, stop) :生成从 start 到 stop-1 的整数序列

③ range(start, stop, step) :生成从 start 到 stop-1 ,步长为 step 的整数序列

# 示例1:生成0到9的序列
for i in range(10):
    print(i)

# 示例2:生成10到19的序列
for num in range(10, 20):
    print(num)

# 示例3:生成1到10中的奇数
for odd in range(1, 11, 2):
    print(odd)
 

 range() 常与 for 循环结合实现固定次数的循环,例如循环打印列表元素的索引:

names = ["Bob", "Eve", "Charlie"]
for index in range(len(names)):
    print(f"索引 {index}: {names[index]}")

 3. 嵌套for循环

 

当处理多维数据(如矩阵、表格)时,需使用嵌套 for 循环:

matrix = [
    [1, 2, 3],
    [4, 5, 6],
    [7, 8, 9]
]
for row in matrix:
    for element in row:
        print(element, end=" ")
    print()  # 换行

外层循环遍历行,内层循环遍历每行的元素,最终输出二维矩阵。

 

二、while循环:条件驱动的循环控制

 

 while 循环通过判断条件表达式的真假决定是否执行循环体,只要条件为 True ,循环就会持续运行。其语法如下:

 

while 条件表达式:

    循环体语句

1. 基础使用场景

count = 0
while count < 5:
    print(count)
    count += 1

上述代码中, count 初始值为0,每次循环检查 count < 5 是否成立,若成立则执行循环体并更新 count ,直到条件不满足时退出循环。

 

2. 无限循环与控制语句

 

无限循环

 

通过设置恒为 True 的条件可创建无限循环,需搭配 break 手动终止:

while True:
    user_input = input("输入q退出: ")
    if user_input == "q":
        break

break与continue

 

① break :立即终止整个循环,跳出循环体

② continue :跳过当前循环剩余语句,直接进入下一次循环

for num in range(10):
    if num % 3 == 0:
        continue  # 跳过3的倍数
    if num == 7:
        break  # 遇到7时终止循环
    print(num)

3. while循环的典型应用

 

猜数字游戏

import random
target = random.randint(1, 100)
guess = 0
while guess != target:
    guess = int(input("猜一个1到100的数字: "))
    if guess < target:
        print("太小了!")
    elif guess > target:
        print("太大了!")
print("猜对了!")

该程序通过 while 循环持续接收用户输入,直到猜中随机生成的数字。

 

三、循环中的else子句

 

Python的 for 和 while 循环支持 else 子句,其执行逻辑较为特殊:当循环未被 break 中断,正常结束时, else 子句才会执行。

# for循环示例
for num in range(3):
    if num == 10:
        break
else:
    print("for循环正常结束")

# while循环示例
count = 0
while count < 3:
    print(count)
    count += 1
else:
    print("while循环正常结束")

else 子句常用于简化代码逻辑,避免使用额外的标志位判断循环是否成功执行。

 

四、循环使用中的常见问题与解决方案

 

1. 死循环陷阱

 

死循环通常由以下原因导致:

 

①条件表达式永远为 True (如 while 1: )

②循环变量未正确更新

# 错误示例:死循环
count = 0
while count < 5:
    print(count)
    # 缺少count += 1,导致count始终为0

# 正确修复
count = 0
while count < 5:
    print(count)
    count += 1

2. 嵌套循环性能优化

 

过多的嵌套会导致时间复杂度呈指数级增长。例如,双重循环遍历两个列表的所有组合:

list_a = [1, 2, 3]
list_b = [4, 5, 6]
# 低效方式
result = []
for x in list_a:
    for y in list_b:
        result.append(x * y)

# 高效方式:使用列表推导式
result = [x * y for x in list_a for y in list_b]

列表推导式、生成器表达式以及 map() 、 filter() 等函数可显著提升代码效率。

 

3. 循环变量作用域

 

在Python中, for 和 while 循环内定义的变量在循环结束后仍可访问,需注意变量覆盖风险:

for i in range(5):
    pass
print(i)  # 输出4,i在循环外依然存在

# 可能的问题:意外覆盖变量
total = 10
for total in range(3):  # 覆盖了外层的total变量
    print(total)

五、总结

 

 for 循环和 while 循环是Python编程的基础核心,二者相辅相成:

 

① for 循环适用于已知迭代次数或遍历可迭代对象的场景

② while 循环更擅长处理条件驱动、不确定循环次数的任务

 

熟练掌握 break 、 continue 和 else 子句,结合数据结构与内置函数,能够帮助开发者编写出简洁高效的代码。通过不断实践,循环结构将成为自动化脚本、算法实现、数据分析等领域的强大武器。

Python 中 for 循环与 while 循环的区别:选择合适的循环结构 for循环和while循环在 Python 中都是非常有用的循环结构。语法结构for循环:适用于遍历已知的可迭代对象。while循环:适用于条件未知或需要动态控制循环次数的场景。适用场景for循环:适用于已知的可迭代对象,如列表、元组、字典等。while循环:适用于条件未知或需要动态控制循环次数的场景。控制变量for循环:自动管理迭代变量,不需要手动设置计数器。while循环:需要手动管理条件和计数器。性能for循环:通常比while循环更高效。while循环:灵活性更高,适合复杂的条件控制。 阅读详情

相关推荐

Python for循环 while 循环及用法详解

for 循环的语法格式如下: for 迭代变量 in 字符串|列表|元组|字典|集合: 代码块 格式中,迭代变量用于存放从序列类型变量中读取出来的元素,所以一般不会在循环中对迭代变量手动赋值;代码块指的是具有相同缩进格式的多行代码(和 while 一样),由于和循环结构联用,因此代码块又称为循环体。 for 循环语句的执行流程如图 1 所示。 下面的程序演示了 for 循环的具体用法: add = "http://www.baidu.com/python/" #for循环,遍历 add 字符串.

zhou_xijian的博客 1255

【Python入门篇】——Python中循环语句(for循环的基础语法)

【Python入门篇】Python中循环语句(for循环的基础语法)

2201_75366661的博客 1万+

Python循环结构详解:for与while循环实战指南

循环结构是编程中的基础控制结构,通过重复执行代码块实现自动化处理。Python提供了for和while两种循环方式,分别适用于已知迭代次数和条件控制的场景。for循环通常用于遍历可迭代对象如列表、字典等,配合range()函数可实现精确控制;while循环则更适合处理不确定次数的循环,如用户输入验证。理解循环控制语句(break、continue)和else子句的用法,能显著提升代码效率。在实际开发中,循环结构广泛应用于数据处理、游戏逻辑、网络爬虫等场景。掌握循环的最佳实践,如避免死循环、优化嵌套循环性能等

weixin_34228387的博客 394

Python循环结构之for

python循环结构之for最全面讲解没有之一!

主要发布一些日常学习代码及理解 3375

Livox MID-360与FAST-LIO2实战:从驱动部署到参数调优的完整指南

激光雷达惯性里程计(LIO)是机器人定位与建图(SLAM)领域的核心技术,它通过紧耦合融合激光雷达点云与惯性测量单元(IMU)数据,实现高精度、低漂移的位姿估计。其核心原理在于利用IMU的高频数据预测运动,并用激光雷达的精确测距信息进行校正与优化,从而在快速运动或特征缺失场景下保持鲁棒性。这项技术的工程价值在于为自动驾驶、移动机器人及三维重建提供了可靠的前端里程计解决方案。针对Livox MID-360固态雷达与FAST-LIO2这一热门组合,其应用场景广泛覆盖了室内外导航与地图构建。本文聚焦于**驱动部署

weixin_29997523的博客 444

科研作图不发愁:手把手教你用PyMOL给蛋白-DNA互作图‘美颜’(附完整配色与标注方案)

本文详细介绍了如何使用PyMOL对蛋白-DNA互作结构图进行专业美化,包括从PDB文件加载、结构展示与标注、互作位点突出显示到高质量渲染输出的完整流程。通过具体案例(PDB ID:8SSS)演示了锌指结构域区分、关键残基标注和互作距离测量等实用技巧,帮助科研人员制作可直接用于期刊投稿的高质量示意图。

weixin_42523792的博客 551

Python基础(11)——Python循环(while、for)

思考:假如我有个女朋友,有一天我们闹矛盾生气了,女朋友说:道歉,说100遍“媳妇儿,我错了”。这个时候程序员会怎么做?答:100遍print('媳妇儿,我错了')思考:复制粘贴100次吗?答:重复执行100次一样的代码,程序中循环即可循环的作用:让代码更高效的重复执行。循环的作用:控制代码重复执行while语法while 条件 : 条件成立重复执行的代码 1 条件成立重复执行的代码 2 . . . . . .while循环嵌套语法。

老板来片烤面包的博客 3万+

头歌操作系统2023春季课堂练习2.1:外部中断

本关任务:通过相关知识以及实验回答:版本 1 内核的第 6 次时钟中断发生时,断点和恢复点(指令地址)分别是多少?回答问题:当第一行 0/1 字符全部输出完毕的时候一共发生了几次时钟中断,即第一行完全填满时 jiffies 记录的已发生次数为多少?本关任务:通过实际操作回答在输出第一行 0/1 字符的过程中(如下图所示),共发生了几次时钟中断?2.此时 bochs 虚拟机输出的 0/1 字符串是什么?(只填写数字,不填写空格!根据相关知识进行实际操作,一直输入 c 直到 0/1 将第一行完全填满。

weixin_64821608的博客 8125

【Python基础】一文搞懂:Python 中循环的使用方法(for 和 while 的用法及区别)

在 Python 编程中,循环是控制流的基本构造之一,用于重复执行代码块。Python 提供了两种主要的循环结构:`for` 循环和 `while` 循环。本文将深入探讨这两种循环的用法及它们之间的主要区别。

climber1121的博客 1万+

保姆级教程:给你的Jetson Orin NX换个‘大房子’——新SSD初始化与JetPack 6.x刷机全流程

本文提供Jetson Orin NX存储升级与JetPack 6.x系统部署的完整指南,涵盖SSD选型、分区策略、刷机流程及性能优化技巧。通过实测数据展示如何提升AI模型加载速度33%,并分享温度管理、I/O调度等实战经验,助力开发者突破边缘计算存储瓶颈。

weixin_42715608的博客 156

S7-1200五轴伺服系统PLC控制方案与调试技巧

工业自动化领域中,多轴伺服控制是实现精密加工的核心技术。基于PROFINET实时通信协议和PLCopen运动控制标准,现代PLC(如西门子S7-1200)能够实现多轴高精度同步控制。其技术原理是通过等时同步模式确保各轴运动的时序一致性,结合PID调节和电子齿轮比实现位置闭环。这种方案在数控机床、3D打印等场景具有重要应用价值。本文以五轴联动系统为例,详细解析了S7-1200与V90伺服驱动器的硬件组态方案,包括PROFINET环网配置和IRT同步设置。在软件层面,重点介绍了基于TIA Portal的工艺对象

weixin_34332905的博客 414

for循环的三种写法

1、遍历循环 for (循环变量类型 循环变量名称;循环条件;更新语句) 循环体 String[] arr = { "a", "b", "c", "d" }; for (int i = 0; i < arr.length; i++) { System.out.println(arr[i]); } 打印台 a b c d ...

javaday01_1712的博客 4054

如何选择深度强化学习算法:MuZero/SAC/PPO/TD3/DDPG/DQN/等算法

如何选择深度强化学习算法:MuZero/SAC/PPO/TD3/DDPG/DQN/等算法

丨汀、的博客 5221

Python中的循环语句(while循环/for循环)

Python中的循环语句(while循环/for循环)

怕晚不晚 1万+

SAP FICO 内部往来对账功能开发说明书(包括测试样例、程序代码仅作参考,不保证一定可以运行)

SAP FICO 内部往来对账功能开发说明书(包括开发源代码、测试样例、FS)

我好像病了的博客 1222

如何实现在Go语言中替换程序自身

总结起来,我们可以通过将新的程序二进制文件写入磁盘,并在运行时启动这个新的程序来实现在Go语言中替换程序自身。在Go语言中,有时候我们需要在程序运行时替换程序自身,例如更新程序版本或者进行热重启。本文将介绍一种正确的方式来实现在Go语言中替换程序自身的方法,并提供相应的源代码示例。此外,替换程序自身可能会导致正在运行的程序产生意外行为或终止,请谨慎使用,并确保在合适的时机进行替换操作。实现替换程序自身的关键是将新的程序二进制文件写入到磁盘,并在运行时启动这个新的程序。函数启动新的可执行文件,并在后台运行。

HoUnix的博客 287

Python for 与 while循环

循环是一种基本的控制流语句,用于遍历序列(如列表、元组、字符串)或其他可迭代对象(如字典、集合、文件对象等)的元素。函数生成的是一个“范围对象”,它是一个可迭代对象,这意味着它不能直接转换成列表,而是在循环中按需生成值。当参数有start、stop和step时,从start开始,每隔step返回一个值,直到stop结束。是两个控制循环流程的关键字,它们用于在特定条件下提前退出循环或跳过当前循环的剩余部分。被执行时,当前循环的剩余代码会被跳过,直接跳到循环的开始处,检查循环条件。stop:终止值(必须写);

2401_87587429的博客 2025

jdk-8u144-linux-x64.tar.gz.

该资源为搭建Linux系统Java环境用,资源的后缀为tar.gz格式的压缩包

Python中的循环结构——for循环和while循环

Python中的循环结构——for循环和while循环

weixin_70673823的博客 808

win10 跳过U8环境检测的IE WebControls.rar

win10 安装u8的时候 提示IE WebControls 不通过,这个工具可以欺骗u8的检查。 跳过U8环境检测的IE WebControls。提示导入失败后,重新检测通过。

WINCC7.3破解文件

WINCC7.3硬件够破解文件,有需要的下载!WINCC7.3硬件够破解文件,有需要的下载!

python中while和for循环的用法_Python之for循环和while循环

Python中有两种循环,分别为:for 循环和 while 循环。循环语句就是在某种条件下,循环的执行某段代码块,并在符合条件的情况下跳出该段循环,其目的是处理想要进行处理的相同任务。它的关键词主要以:for、while来标识。执行的流程用下图来说明:1、for 循环for 循环可以用来遍历某一对象(就是把集合中的每个元素都依次访问一次)。for循环的基本结构如下:编写循环语句时,其语法是这样的...

weixin_39530647的博客 3835

文档:亲测可用解决vnc灰屏,黑屏,鼠标大黑叉情况

主要解决vnc-viewer灰屏,黑屏,鼠标大黑叉等现象,详细见文档。

python中for循环和while循环的区别_python的for循环和while循环

for循环:for循环和while循环,两者的相同点在于都能循环做一件重复的事情;不同点在于,for循环是在序列穷尽时停止,while循环是在条件不成立时停止。1、for循环是需要先设定循环的次数(n),然后再执行属于for循环语句的n次。基本构造是for 元素 in 序列:statement举例来说,我们编辑一个叫forDemo.py的文件for a in [3,4.4,'life']:prin...

weixin_39636717的博客 6701

Python循环从入门到实践:for/while循环详解

Python循环结构详解:掌握for和while循环的使用技巧。for循环适合遍历列表、字典(使用items())和固定次数循环(配合range()),是Python中最常用的循环结构。while循环在条件为真时重复执行,需注意避免无限循环。文章提供了代码示例、使用场景说明和练习建议,帮助读者掌握这两种核心循环结构。重点强调了for循环的遍历技巧和while循环的注意事项,适合初学者巩固Python基础。

m0_73373301的博客 1563

python for、while循环结构(附实战代码)

介绍for循环、range函数、while、break等用法,以及实战案例

程序小武的博客 1155

python while循环和for循环转换_Python的While循环和for循环,python,while

循环结构是编程的三大结构之一。python和其他语言一样,提供了非常多的关键字来支持for循环和while循环。下面整理一下:1.while循环1.1 while循环的基本格式while循环的基本格式如下:while 条件表达式 :条件满足,执行循环语句;不满足,则退出循环1.2.while循环示例程序count = 0while (count<9):print(f'Now count is...

weixin_34549315的博客 4486

所有for循环都可以用while循环改写python_python-for循环与while循环

while 循环格式:while 条件 为 True:代码块while True:rayn_age = 18age = input('请输入你的年龄:')age = int(age)if age == rayn_age:print('恭喜你答对了')elif age > rayn_age:print('猜大了')else:print('猜小了')break请输入你的年龄:11猜小了问题来了,...

weixin_39960145的博客 2707

python while循环求和_Python基础——for/while循环

Python版本:3.6.2 操作系统:Windows 作者:SmallWZQ上学期间,常常遇到这样的情景:为了惩罚学生,老师会说:“XXX,你先去操场上跑10圈再回来继续反省。”这话虽短,但含义深刻。不过这在当时,我是体会不到其中的“深意”的。直至大学,当接触到C++编程时,我才领悟到这其中的内涵。原来这句话中饱含编程哲学啊。什么哲学呢?围着操场跑道,重复跑10圈……这不就是“循环”嘛?言归...

weixin_39784263的博客 3375

python中while循环和for循环

``while循环一般用于无限循环,for循环一般用于有限循环,Python中的循环 使我们可以多次执行一组语句。让我们举个例子来理解为什么在python中使用循环。假设您是一名软件开发人员,并且需要为办公室中的所有员工提供一个软件模块。因此,您必须分别打印每个员工的工资明细。打印所有员工的详细信息将是一项艰巨的任务,相反,您可以使用逻辑来计算详细信息并继续迭代相同的逻辑语句。这将节省您的时间并使代码高效。 2.实例操作 我们通过一些简单的练习,来慢慢熟悉while 循环:利用 while 循环打印从0-1

qq_60954460的博客 3004
上一篇: 从零开始:Python语言基础之条件语句(if-elif-else)
下一篇: 从零开始:Python语言基础之函数定义与调用
玉笥寻珍
博客等级 码龄2年 282粉丝 39原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

玉笥寻珍

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值