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

Python——分支和循环

在Python中,分支和循环是控制程序流程的基本结构,它们允许程序根据条件执行不同的代码块,或者重复执行某个代码块直到满足特定条件。下面将详细解释这两种结构。

分支结构

分支结构根据条件的不同来执行不同的代码块。Python中主要通过ifelif(else if的缩写)、else语句来实现分支。

基本语法
if 条件表达式:  # 条件为真时执行的代码块  
elif 条件表达式2:  # 条件表达式为假,且条件表达式2为真时执行的代码块  
else:  # 所有前面的条件都为假时执行的代码块

除了基本语法外,还有一个特殊的用法:

条件为真时执行的语句 if condition else 条件为假时执行的语句
示例
age = 20  if age < 18:  print("未成年")  
elif age == 18:  print("刚成年")  
else:  print("已成年")

循环结构

循环结构允许你重复执行一段代码块直到满足某个条件。Python提供了几种循环结构,包括for循环和while循环。

For循环

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

基本语法
for 变量 in 可迭代对象:  # 循环体
示例
fruits = ["apple", "banana", "cherry"]  
for fruit in fruits:  print(fruit)

当我们想要根据一个范围来重复执行某些操作时,Python提供了一个内置函数range(),它与for循环配合使用非常方便。

range() 函数

range() 函数生成一个整数序列,这个序列通常用于for循环中的迭代。range() 函数可以接受一到三个参数:

  • start(可选): 序列的起始值,默认为0。
  • stop(必需): 序列的结束值,但不包括此值。
  • step(可选): 两个值之间的间隔,默认为1。

range() 函数返回的是一个迭代器,这意味着它返回的对象是一个支持迭代操作的对象,即它可以被遍历以获取其内部的元素。然而,在实际使用中,我们很少直接对range()的结果进行迭代,而是将它直接用作for循环的迭代对象。

for 循环与 range() 的结合使用

for循环与range()结合使用时,可以非常方便地基于一个给定的范围进行迭代。例如,如果你想打印从0到4的数字,你可以这样做:

for i in range(5):  # 注意这里用5,因为range不包括结束值  print(i)  
# 输出:  
# 0  
# 1  
# 2  
# 3  
# 4
注意事项
  • range()生成的序列是从startstop-1的整数序列,即stop值是不包括在内的。
  • 如果step是正数,则序列是从startstop-1的升序序列;如果step是负数,则序列是从startstop+1的降序序列(但请注意,这意味着stop值必须大于start,否则序列将是空的)。
  • 虽然在很多情况下range()用于for循环,但它也可以用在其他需要迭代整数的场合,比如列表推导式或生成器表达式中。

总的来说,for循环与range()的结合是Python中处理基于范围的迭代的一种非常强大且灵活的方式。

While循环

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

基本语法
while 条件表达式:  # 循环体
示例
count = 0  
while count < 5:  print(f"Count is {count}")  count += 1

循环控制语句

在循环中,你可能会需要提前结束循环或跳过循环的剩余部分。Python提供了breakcontinue语句来实现这些功能。

  • break:立即退出循环,不再执行循环中剩余的语句。
  • continue:跳过当前循环的剩余语句,并继续下一次循环。
示例
for i in range(1, 10):  if i == 5:  break  # 当i等于5时,退出循环  print(i)  print("\nAfter break")  for i in range(1, 10):  if i == 5:  continue  # 当i等于5时,跳过当前循环的剩余部分  print(i)

while-else结构

在Python中,while 循环可以搭配一个可选的 else 子句,这种结构称为 while-else 结构。while-else 结构允许你在 while 循环正常结束(即不是通过 break 语句退出的)后执行一些代码。如果 while 循环是通过 break 语句退出的,那么 else 子句中的代码将不会被执行。

基本语法
while 条件表达式:  # 循环体  # 如果需要,可以使用 break 语句退出循环  
else:  # 当循环正常结束时执行的代码
示例 :通过 break 退出循环
count = 0  
while True:  print(f"Count is {count}")  count += 1  if count >= 5:  break  
else:  print("This will not be printed")  print("Exited the loop")

在这个例子中,虽然 while 循环的条件是 True,但由于在循环体内使用了 break 语句,当 count 达到 5 时,循环会提前退出。因此,else 子句中的代码不会被执行,而 "Exited the loop" 会被打印出来。

使用场景

while-else 结构在需要知道循环是正常结束还是被 break 语句中断时非常有用。例如,在搜索列表中某个元素时,如果找到了元素,则使用 break 退出循环;如果遍历完整个列表都没有找到,则 else 子句中的代码会执行,可能表示需要执行一些默认操作或报告未找到元素。


http://www.mrgr.cn/news/1757.html

相关文章:

  • 机器学习第十一章--特征选择与稀疏学习
  • RFID光触发标签在物流管理中的创新应用及显著效益
  • python之matplotlib (6 等高线和热力图)
  • 集合及数据结构第三节————包装类和简单认识泛型
  • [Excel VBA办公]VBA代码创建透视表
  • 低功耗神经网络
  • 使用Python实现深度学习模型:智能车联网与自动驾驶
  • 跟着 iLogtail 学习高质量软件建设
  • Nuxt3【路由中间件】middleware
  • 使用JQUERY请求数据出现500报错
  • Python——扩展数据类型
  • wordpress视频模板
  • Redis RDB三两事
  • Redis在Linux的安装
  • Springboot集成Kafka
  • 最近在写的支付模块
  • 汽车IVI中控OS Linux driver开发实操(二十二):kernal的异步作业
  • 防火墙技术原理与应用
  • 代码随想录算法训练营_day20
  • 2.1 文件内容差异对比方法