当前位置: 首页 > news >正文

[Python 基础课程]循环语句

for 循环

for 循环用于遍历一个序列(如列表、元组、字符串)或其他可迭代对象中的元素。它会依次取出可迭代对象中的每个元素,并执行相应的代码块。

其基本语法结构如下:

for 变量 in 可迭代对象:# 对每个元素执行的代码块代码块

让我们来分解一下这个结构:

  • for关键字:这是 for 循环的标志
  • 变量: 在每次循环迭代中,变量 会被赋值为可迭代对象中的当前元素
  • in 关键字:用于指定要遍历的可迭代对象
  • 可迭代对象: 这是指能够逐个返回其成员的对象,例如列表 (list)、元组 (tuple)、字符串 (str)、字典 (dict)、集合 (set) 以及 range() 函数生成的序列等
  • 冒号 : 表示接下来是一个代码块
  • 代码块: 这是在每次循环迭代中要执行的一段或多行代码,需要相对于 for 语句进行缩进

下面是一个具体的使用 for 循环遍历列表的例子:

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

下面是一个遍历字符串中的字符的例子:

message = "Hello"
for char in message:print(char)

for 循环经常搭配 range 函数实现循环执行指定次数。range() 函数可以生成一个数字序列,常用于 for 循环中指定循环次数。range(start, stop, step) 可以生成从 start 开始(包含),到 stop 结束(不包含),步长为 step 的整数序列。如果只提供一个参数 range(stop),则生成从 0 开始到 stop 结束(不包含),步长为 1 的序列。

# 打印 0 到 4 的数字
for i in range(5):print(i)# 打印 2 到 10 之间的偶数
for i in range(2, 11, 2):print(i)

Python 的 for 循环结构还支持一个可选的 else 子句,它在循环正常结束(即不是通过 break 语句终止的)后执行。for...else结构中的else 中的代码块会在 for 循环遍历完所有元素后执行。如果 for 循环被 break 语句提前终止,则 else 中的代码块不会执行。

numbers = [1, 2, 3, 4, 5]
for num in numbers:if num == 6:print("找到数字 6,循环终止!")break
else:print("循环正常结束,没有找到数字 6。")

由于列表中没有数字 6,所以输出是 "循环正常结束,没有找到数字 6。

while 循环

while 循环会在指定的条件为真(True)的情况下,重复执行代码块。只有当条件变为假(False)时,循环才会停止。

其基本语法结构如下:

while 条件:# 当条件为真时执行的代码块代码块

让我们来分解一下这个结构:

  • while 关键字:这是 while 循环的标志
  • 条件: 这是一个可以被求值为布尔值的表达式
  • 冒号 : 表示接下来是一个代码块
  • 代码块: 这是在每次条件为真时要执行的一段或多行代码,需要相对于 while 语句进行缩进

务必注意:while 循环的代码块中,必须包含能够使条件最终变为 False 的语句,否则循环会无限执行下去,形成无限循环(infinite loop),这通常不是我们期望的结果。

使用 while 循环计算 1 到 5 的和的例子:

count = 1
total = 0
while count <= 5:total += countcount += 1print(f"1 到 5 的和为:{total}")

在这个例子中,while 循环会一直执行,直到 count 的值大于 5。在每次循环中,total 会累加上 count 的值,并且 count 的值会递增 1。当 count 变为 6 时,条件 count <= 5False,循环结束。

使用 while 循环接收用户输入直到输入 “quit” 的例子:

user_input = ""
while user_input != "quit":user_input = input("请输入内容 (输入 'quit' 退出): ")print(f"你输入的是:{user_input}")

while 语句也可以搭配 else 使用,和 for 一样。while...else中的else代码块会在 while 循环的条件变为 False 并且循环正常结束时执行。如果 while 循环被 break 语句提前终止,则 else 中的代码块不会执行。

count = 0
while count < 5:print(count)count += 1if count == 3:break
else:print("while 循环正常结束。")

循环控制语句:break 和 continue

Python 提供了 breakcontinue 语句,用于在循环执行过程中改变其正常的控制流。

break 语句:用于立即终止当前所在的循环,并跳出循环体,执行循环之后的代码(如果存在)。

numbers = [1, 2, 3, 4, 5, -1, 6]
for num in numbers:if num < 0:print("遇到负数,循环终止!")breakprint(f"当前数字:{num}")

continue 语句:用于跳过当前循环迭代中的剩余代码,并立即开始下一次迭代。

numbers = [1, 2, 3, 4, 5, -1, 6]
for num in numbers:if num < 0:print("遇到负数,跳过!")continueprint(f"当前数字:{num}")
http://www.dtcms.com/a/271084.html

相关文章:

  • 基于物联网的智能家居控制系统设计与实现
  • 如何让相册按时间轴展示❓看这里❗
  • git入门之安装tortoisegit
  • Java学习第二十六部分——Spring Security
  • 好发不卷!Transformer依旧能打,模型性能显著提升!
  • C++STL-String
  • Docker 搭建 Harbor 私有仓库
  • Elasticsearch RESTful API入门:全文搜索实战(Java版)
  • 【Oracle报错】[INS-13001] 环境不满足最低要求。
  • 以太网基础④IP 协议介绍与 IP 校验和算法实现
  • 逆向 qq 音乐 sign,data, 解密 response 返回的 arraybuffer
  • 在 Coze 平台工作流开发中,使用图生视频大模型需要时间比较长比如5分钟,如何解决工作流运行超时的问题以及等在视频生成以后再向下走
  • JavaEE初阶第八期:解锁多线程,从 “单车道” 到 “高速公路” 的编程升级(六)
  • Jmeter进阶篇(35)完美解决Jmeter转换HTML报告报错“Begin size 0 is not equal to fixed size 5”
  • git中的指令解释
  • 详解CAN总线的位填充机制
  • 【学习笔记】计算机操作系统(七)—— 文件管理
  • 全志H616开发学习文档
  • prometheus+grafana接入kafka实战
  • Python管理咨询数据可视化实战:收入分布与顾问利用率双轴对比图表生成脚本
  • 基于BRPC构建高性能HTTP/2服务实战指南
  • python之requests库解析
  • 1️⃣理解大语言模型
  • 【时时三省】(C语言基础)通过指针引用数组
  • 阿里开源WebSailor:超越闭源模型的网络智能体新星
  • 疏锦行Python打卡 DAY 54 Inception网络及其思考
  • HTML + CSS + JavaScript
  • 字体 Unicode 区块字符展示 PDF 生成器
  • Ubuntu重装系统后ssh连接不上(遇到 ​​“Unit ssh.service not found“​​ 错误)
  • kubernetes存储入门