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

Python循环控制

Python循环控制

Python提供了几种循环控制结构,允许你重复执行代码块并根据条件控制循环流程。以下是Python中主要的循环控制方式:

1. while循环

while循环在给定条件为真时重复执行代码块。

count = 0
while count < 5:print(f"Count is: {count}")count += 1  # 等同于 count = count + 1

while循环控制语句:

  • break:立即终止循环
  • continue:跳过当前迭代,继续下一次循环
  • else:当循环条件变为False时执行(如果循环不是被break终止的)
count = 0
while count < 5:if count == 3:break  # 当count等于3时终止循环print(f"Count is: {count}")count += 1
else:print("循环正常结束")

2. for循环

for循环用于遍历序列(如列表、元组、字符串、字典等)或其他可迭代对象。

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

for循环控制语句:

  • break:立即终止循环
  • continue:跳过当前迭代,继续下一次循环
  • else:当循环完成时执行(如果循环不是被break终止的)
for x in range(6):  # range(6)生成0-5的数字if x == 3:continue  # 跳过x=3的迭代if x == 5:break     # 当x=5时终止循环print(x)
else:print("循环完成")

3. range()函数

range()函数生成一个不可变的数字序列,常用于for循环。

# 生成0-4的数字
for i in range(5):print(i)# 生成2-6的数字
for i in range(2, 7):print(i)# 生成1-10的奇数
for i in range(1, 11, 2):print(i)

4. 嵌套循环

循环可以嵌套使用:

for i in range(3):for j in range(2):print(f"i={i}, j={j}")

5. 循环控制技巧

使用enumerate()获取索引和值

fruits = ["apple", "banana", "cherry"]
for index, fruit in enumerate(fruits):print(f"Index {index}: {fruit}")

使用zip()同时遍历多个序列

names = ["Alice", "Bob", "Charlie"]
ages = [25, 30, 35]
for name, age in zip(names, ages):print(f"{name} is {age} years old")

列表推导式(简洁的循环方式)

# 生成平方数列表
squares = [x**2 for x in range(10)]
print(squares)

6. 循环中的异常处理

for i in range(5):try:result = 10 / (i-2)print(result)except ZeroDivisionError:print("不能除以零")finally:print("每次循环都会执行")

掌握这些循环控制结构可以让你在Python中更灵活地处理重复任务和条件逻辑。

http://www.xdnf.cn/news/485335.html

相关文章:

  • HarmonyOS开发组件基础
  • C#中UI线程的切换与后台线程的使用
  • SkyWalking的工作原理和搭建过程
  • 【Ansible基础】Ansible执行流程详解:从Playbook到实际任务
  • fpga系列 HDL : Microchip FPGA开发软件 Libero Soc 项目仿真示例
  • Femap许可优化策略
  • 如何选择靠谱的外卖霸王餐系统进行对接?
  • 编译opencv4.11gstreamer 参考
  • 4.3/Q1,Charls最新文章解读
  • 车道线检测----CLRERNet
  • 如何备考GRE?
  • python中列表的操作
  • [基础] HPOP、SGP4与SDP4轨道传播模型深度解析与对比
  • 华三防火墙的IRF和RBM
  • HarmonyOs开发之——— ArkWeb 实战指南
  • 【51单片机中断】
  • 深入解析:构建高性能异步HTTP客户端的工程实践
  • 解锁AI:从开发密码到行业应用版图
  • 炒股中如何控制风险:构建攻守兼备的投资体系
  • 翼兴消防监控 – 大数据可视化HTML源码
  • MySQL——十一、主从复制
  • java-----线程池
  • MIMO 检测(3)--最大SINR准则(MRC、IRC)
  • 【Spark】-- DAG 和宽窄依赖的核心
  • Day27 Python打卡训练营
  • 《指针与整数相加减的深入解析》
  • asp.net自动保存上传文件时指定文件名,MultipartFormDataStreamProvider
  • Flask框架入门与实践
  • LangPDF: Empowering Your PDFs with Intelligent Language Processing
  • YOLO11解决方案之对象裁剪探索