Python循环语句代码详解:while、for、break

【源代码】20个Python循环程序 以上示例涵盖了不同类型的循环结构以及它们在实际编程中的应用,可以帮助我们更好地理解Python中的循环概念。 阅读详情

1 while循环

循环语句是程序设计中常用的语句之一。任何编程语言都有while循环,Python也不例外。while循环的格式如下所示。

 while(表达式): 
     … 
 else: 
     … 

while循环的执行过程:当循环表达式为真时,依次执行while中的语句。直到循环表达式的值为False,程序的流程转到else语句。其中else子句可以省略,表达式两侧的括号也可以省略。

注意:while循环中的else子句也属于循环的一部分,最后一次循环结束后将执行else子句。

下面这段代码演示了while循环的使用。程序首先要求输入5个数字,然后依次输出这5个数字。

 # while循环 
 numbers = input("输入几个数字,用逗号分隔:").split(",") 
 print(numbers) 
 x = 0 
 while x < len(numbers):    # 当x的值小于输入字数的个数的时候,执行循环内容     
     print (numbers[x]) 
     x += 1                  # 一个循环结束时给x加1 

【代码说明】

  • 第2行代码使用input()捕获输入。按照提示输入5个数字,并用逗号分隔。input()根据输入的逗号,生成一个列表。
  • 第3行代码输出列表numbers的内容。
  • 第4行代码定义变量x的值为0。
  • 第5行代码循环列表numbers。
  • 第6行代码输出列表中第x+1个数字的值。
  • 第7行代码,每次循环使变量x增1。

下面【例3-6】中的这段代码演示了else子句在while循环中的使用。当变量x的值大于0时,执行循环,否则输出变量x的值。

【例3-6.py】

 # 带else子句的while循环 
 x = float(input("输入x的值:"))   # 接收用户输入的数字并转换为float类型 
 i = 0 
 while(x  != 0):                  # Python 3中的不等于不再使用<>,一律使用!= 
     if(x > 0): 
         x -= 1                  # 如果x大于0,则减1 
     else: 
         x += 1                 # 如果x小于0,则加1 
     ii = i + 1 
     print( "第%d次循环:%f" %(i, x)) 
 else: 
     print ("x等于0:", x) 

【代码说明】

  • 第2行代码输入变量x的值。
  • 第3行代码定义变量i,变量i表示循环次数。
  • 第4行代码,给出循环条件x != 0。如果x不等于0,则执行第5行代码;否则,执行else子句的内容。
  • 第5行代码,判断变量x的值是否大于0。
  • 第6行代码,如果x的值大于0,则每次循环都减1。
  • 第7行代码,判断变量x的值是否小于0。
  • 第8行代码,如果x的值小于0,则每次循环都加1。
  • 第9行代码,每次循环使变量i的值加1。
  • 第11行代码,循环结束,else子句输出变量x的值。输出结果(假设输入数字为0):x等于0:0。

在使用循环语句时,应注意循环表达式的布尔值,避免出现死循环。死循环是指循环条件永远为真的循环。例如:

 i = 1 
 while i > 0:     # i永远大于0 
     ii = i + 1 
     print(i) 

这段代码就是一个死循环,变量i的值永远都大于0。

2. for循环

for循环用于遍历一个集合,依次访问集合中的每个项目。for循环的格式如下所示。

 for 变量 in 集合: 
     … 
 else: 
     … 

for…in…循环的执行过程:每次循环从集合中取出一个值,并把该值赋值给变量。集合可以是元组、列表、字典等数据结构。其中else子句可以省略。

注意:for循环中的else子句也属于循环的一部分,最后一次循环结束后将执行else子句。

for…in…循环通常与range()函数一起使用,range()返回一个列表,for…in…遍历列表中的元素。range()函数的声明如下:

class range(object) 
   range(stop) -> range object 
range(start, stop[, step]) -> range object 

【代码说明】

range()返回一个range对象,列表的元素值由3个参数决定:参数start表示列表开始的值,默认值为0;参数stop表示列表结束的值,该参数不可缺少;参数setp表示步长,即每次递增或递减的值,默认值为1。

下面【例3-7】中的这段代码遍历range()生成的列表,过滤出正数、负数和0。

【例3-7.py】

 # for in语句 
 for x in range(-1, 2): 
     if x > 0:  
         print ("正数:",x) 
     elif x == 0 :  
         print ("零:",x) 
     else: 
         print ("负数:",x) 
 else: 
    print ("循环结束") 

【代码说明】

  • 第2行代码遍历range(-1,2)生成的列表。range(-1,2)返回的3个数字分别为-1、0、1。每次循环结束,变量x的值依次为-1、0、1。
  • 第3行代码判断变量x的值是否大于0。
  • 第4行代码输出正数的值。输出结果为“正数:1”。
  • 第5行代码判断变量x的值是否等于0。
  • 第6行代码,输出结果为“零:0”。
  • 第8行代码,输出负数的值。输出结果为“负数:-1”。
  • 第9行代码并没有结束for循环,else子句执行后循环才结束。输出结果为“负数:-1”。

在C、Java语言中,支持如下结构的for语句。

for(表达式1; 表达式2; 表达式3)  
语句块 

Python不支持这样的for循环。如果需要编写类似功能的循环,可以使用while循环。例如:

 x = 0 
 while x < 5: 
     print(x) 
     xx = x + 2 

while循环的写法比较琐碎,需要比较判断。因此,对此也可以使用for循环,借助range()函数来实现。例如:

 for x in range(0, 5, 2): 
     print (x) 

【代码说明】

输出的数字在[0,5)这个区间,不包括5。每次循环结束,x的值加2。输出结果:

0 
2 
4 

这里只用了两行代码就实现了传统for循环。如果要用条件表达式作为循环的条件,可以构造range()函数来实现。

3. break和continue语句

break语句可以使程序跳出循环语句,从而执行循环体之外的程序,即break语句可以提前结束循环。例如,模拟switch分支结构使用了break语句。

 operator = "+" 
  x = 1 
  y = 2 
  for case in switch(operator):   # switch只能用于for... in...循环中 
      if case('+'): 
          print (x + y) 
          break 
      if case('-'): 
          print (x - y) 
         break 
     if case('*'): 
         print (x * y) 
         break 
     if case('/'): 
         print (x / y) 
         break 
     if case():                      # 默认分支 
         print ("") 

【代码说明】

第7行代码中使用了break。当变量operator的值为“+”,则执行表达式x + y,然后中断switch分支结构,后面的case分支都不会执行。此时输出结果为3。后面的break作用相同。当匹配到某个case后,程序将跳出switch。

如果第一个case不使用break子句,程序将输出两个值,分别是3和-1。因为执行完输出表达式x + y后,分支结构并没有中断,程序将流转到下面一个case。然后继续计算表达式x – y的值,遇到后面的break语句才退出分支结构。break语句在循环结构中也有类似的作用。【例3-8】中的这段代码将从0到99中查找用户输入的值。

【例3-8.py】

 x = int(input("输入x的值:")) 
 y = 0 
 for y in range(0, 100): 
     if x == y: 
         print ("找到数字:", x) 
         break 
 else: 
     print("没有找到") 

【代码说明】

  • 第1行代码捕获用户输入的值,并把该值转换为int类型,赋值给变量x。
  • 第2行代码定义一个变量y,变量y用于暂存需要遍历的列表的值。
  • 第3行代码使用for…in…循环遍历range(0, 100)返回的列表。range(0, 100)的返回值为0、1、2、…、99。
  • 第4行代码判断输入的值是否等于列表中的值。如果条件成立,输出查找到的数字,并立即退出循环。循环结束,后面的else子句将不会被执行。
  • 第7行代码,当没有找到输入的值时,else子句后面的代码将被执行。

注意:break语句不能运行在循环体或分支语句之外,否则,Python解释器将提示如下错误。

SyntaxError: 'break' outside loop 

continue语句也是用来跳出循环的语句,但是与break不同的是,使用continue语句不会跳出整个循环体,只是跳出当前的循环,然后继续执行后面的循环。

 x = 0 
 for i in [1,2,3,4,5]: 
     if x == i: 
     continue 
 x  += i 
 print("x的值为", x)     

【代码说明】

  • 第1行代码将x赋值为0。
  • 第2行代码使用for...in...语句遍历列表[1,2,3,4,5]。
  • 第3行代码将x与i进行比较,如果x与值i相等,则执行第4行的continue语句,停止当前循环,即不再执行第5行代码,继续执行下一个循环。
  • 第6行代码打印出最终的结果,输出为12。

本文的文字及图片来源于网络,仅供学习、交流使用,不具有任何商业用途,如有问题请及时联系我们以作处理

想要获取更多Python学习资料可以加QQ:2955637827私聊或加Q群630390733大家一起来学习讨论吧!

 

433M遥控器无线解码1527协议 433M遥控器无线解码1527协议,定时器轮询法 阅读详情

相关推荐

避坑指南:AUTOSAR FlashDriver操作DFlash模拟EEPROM时,你最容易忽略的5个细节

本文深入探讨了AUTOSAR FlashDriver在DFlash模拟EEPROM操作中最容易被忽视的五大细节问题,包括地址合法性检查、操作时序控制、并发访问冲突、电源稳定性管理和寿命管理。通过实际项目案例和工程化解决方案,帮助开发者避免常见陷阱,提升汽车电子控制单元(ECU)的可靠性和稳定性。

weixin_42741930的博客 247

python循环怎么结束_python如何结束循环

python中的break语句和continue语句breakbreak是终止本次循环,比如你很多个while循环,你在其中一个while循环里写了一个break,满足条件,只会终止这个while里面的循环,程序会跳到上一层while循环继续往下走以简单的for循环来举例for i in range(10):print("-----%d-----" %i)for j in range(10):if...

weixin_39831503的博客 8741

炼丹-Pyecharts: JupyterLab无法render_notebook

炼丹-Pyecharts: JupyterLab无法render_notebook问题描述Jupyter-Lab 环境下render_notebook显示空白 问题描述Jupyter-Lab 环境下render_notebook显示空白 首先需要使用pyecharts自带的config来申明一下使用pyecharts的运行环境 from pyecharts.globals import Curre...

MichaelZzzzz的博客 4689

python中退出for循环的两种方式:break 和continue

其实break和continue退出for循环的用法和退出while的用法是一样的。break,当某些条件成立退出循环,后面代码不执行,终止整个循环;continue,当某些条件成立终止当前循环继而执行下次循环。下面用2个代码示例来看看一下怎么使用以及执行结果。执行结果:学习break和continue退出for循环只要把之前我写的对应的while循环中break和continue文章再拿来看一遍就好了,那篇文章写得比较详细。理解一个后,后面的都会迎刃而解,更多。

qq_46094651的博客 4032

运行stable-diffusion出现的问题

解决:即用 https://github.com/CompVis/taming-transformers/blob/master/taming/modules/vqvae/quantize.py 新文件,替换错误提示文件中的全部内容即可。5.新建文件夹 CompVis/stable-diffusion-safety-checker/将下载的四个文件放入 解决!后面还会遇到'openai/clip-vit-large-patch14离线下载的问题,同样步骤解决。解决:下载后离线,步骤如下。

weixin_52121118的博客 2350

Revit二次开发——不启动Revit,做rvt文件数据导出

Revit二次开发——不启动Revit,做rvt文件数据导出Node.js部分调用C#端供外部调用的dllC#部分调用RevitNet.dll,做数据导出exe做外部调用dll总结功能快捷键合理的创建标题,有助于目录的生成如何改变文本的样式插入链接与图片如何插入一段漂亮的代码片生成一个适合你的列表创建一个表格设定内容居中、居左、居右SmartyPants创建一个自定义列表如何创建一个注脚注释也是必不可少的KaTeX数学公式新的甘特图功能,丰富你的文章UML 图表FLowchart流程图导出与导入导出导入 N

Y.Jerome的专栏 4113

Python循环语句

输出的便是0-4形成一列,这里rang(5),便是让i从0开始到5结束(不包括末尾值),也就是下标前五个元素。2.我们不仅仅可以规定到什么地方结束,我们还可以设定开始位置,结束位置,和每次的步进值。这里的range(2,6,2)中的2表示其实从2开始,6表示到6结束(不包括6),2(第二个2)代表每次步进值为2。这里不仅仅可以向正方向,同样负方向也是可以的。这里我们便知道for循环在这里时灵活的,在正负反向都可以使用。

m0_67737085的博客 2545

vivado生成及调用自定义IP的方法

开发环境:vivado 2018.2 1.将整个工程封装为自定义IP 将整个工程封装为自定义IP主要有以下步骤: 步骤1.选中工程中的top模块。点击Tools ------> Create and Package New IP,如图1所示 图1 步骤2.弹出界面后,点击next至图2界面,选择Package your current project,然后继续点击next 图2 步骤3.选择生成的IP路径,如图3所示。这个路径就是后续添加该IP的路径 图3 步骤4.继续点击next,然后选择fi

进击的阿日比 4735

chatgpt赋能python:Python如何一直循环一个代码?

本文由chatgpt生成,文章没有在chatgpt生成的基础上进行任何的修改。以上只是chatgpt能力的冰山一角。作为通用的Aigc大模型,只是展现它原本的实力。对于颠覆工作方式的ChatGPT,应该选择拥抱而不是抗拒,未来属于“会用”AI的人。🧡AI职场汇报智能办公文案写作效率提升教程 🧡专注于AI+职场+办公方向。下图是课程的整体大纲下图是AI职场汇报智能办公文案写作效率提升教程中用到的ai工具。

tulingtest的博客 1403

超声波传感器(CHx01) 学习笔记 Ⅲ-API介绍

超声波传感器(CHx01) API介绍

nicole088的专栏 1389

python循环一段代码_Python循环语句代码详解:while、for、break

导读:循环语句是指重复执行同一段代码块,通常用于遍历集合或者累加计算。Python中的循环语句有while语句、for语句。01 while循环循环语句是程序设计中常用的语句之一。任何编程语言都有while循环,Python也不例外。while循环的格式如下所示。1 while(表达式):2 …3 else:4 …while循环的执行过程:当循环表达式为真时,依次执行while中的...

weixin_39863616的博客 2010

【win10】win 10 电脑喇叭音频显示红叉的处理方法

目录 一、报错情况 二、“音频服务未运行”解决方法 三、“未插入扬声器或耳机”解决方法 一、报错情况 (1)当电脑的扬声器喇叭图标上带有红X符号,提示“音频服务未运行”时: (2)小喇叭上面有红叉,显示“未插入扬声器或耳机”时: 二、“音频服务未运行”解决方法 (1)开始菜单搜索“服务”: (2)没有启动的点击“启动”,已启动的点击“重新启动”: (3)继续,右...

顾三殇 —— 博客空间(软件测试) 17万+

python循环代码是什么_Python循环语句代码详解:while、for、break

循环语句是程序设计中常用的语句之一。任何编程语言都有while循环,Python也不例外。while循环的格式如下所示。while(表达式):…else:…while循环的执行过程:当循环表达式为真时,依次执行while中的语句。直到循环表达式的值为False,程序的流程转到else语句。其中else子句可以省略,表达式两侧的括号也可以省略。注意:while循环中的else子句也属于循环的一部分,...

weixin_32729025的博客 2042

复分析 阿尔福斯(Ahlfors) 第三版答案 英文

答案分为十章,有部分习题没有答案,全英文复分析阿尔福斯(Ahlfors) 第三版答案

Devexpress16.2.6破解工具

Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具Devexpress16.2.6破解工具

Python循环语句代码逐行详解:while、for、break和continue

循环语句是指重复执行同一段代码块,通常用于遍历集合或者累加计算。Python中的循环语句有while语句、for语句。

m0_48891301的博客 1196

假人有限元模型

假人模型,车辆碰撞假人有限元模型,适合做乘员安全的研究者利用

python循环体结束标志_Python循环语句代码详解:while、for、break

1 while循环循环语句是程序设计中常用的语句之一。任何编程语言都有while循环,Python也不例外。while循环的格式如下所示。while(表达式):…else:…while循环的执行过程:当循环表达式为真时,依次执行while中的语句。直到循环表达式的值为False,程序的流程转到else语句。其中else子句可以省略,表达式两侧的括号也可以省略。注意:while循环中的else子句也...

weixin_39796878的博客 2936

python循环一段代码_Python循环语句代码逐行详解:while、for、break和continue

来源:大数据DT本文约3200字,建议阅读9分钟循环语句是指重复执行同一段代码块,通常用于遍历集合或者累加计算。Python中的循环语句有while语句、for语句。 01 while循环循环语句是程序设计中常用的语句之一。任何编程语言都有while循环,Python也不例外。while循环的格式如下所示。while(表达式):…else:…while循环的执行过程:当循环表达式...

weixin_39951018的博客 863

python中break什么意思_python中break怎么用

本文主要讲下python中的break语句用法,常用在满足某个条件,需要立刻退出当前循环时(跳出循环),break语句可以用在for循环和while循环语句中。简单的说,break语句是会立即退出循环,在其后边的循环代码不会被执行。break语句的用法>>>x = 1>>>while True:>>> x =1>>> print x假设while条件为真,则执行代码块会被执行。因为条件...

weixin_39915668的博客 484

Python 循环详解:for、while 及高级用法

Python 的循环结构强大而灵活。for循环适合遍历已知的序列,而while循环更适合在条件满足时重复执行。通过breakcontinue和else可以精细控制循环流程。掌握enumeratezip和推导式等高级技巧,能让你写出更简洁、高效的 Python 代码。记住,编写循环时要时刻注意循环条件,避免无限循环,并谨慎处理正在迭代的数据结构。

KevinChen2019的博客 238
上一篇: Python排序函数用法
下一篇: Python 中更优雅的日志记录方案
pythonputao
博客等级 码龄6年 60粉丝 111原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

个

红包个数最小为10个

元

红包金额最低5元

当前余额3.43元 前往充值 >
需支付:10.00元
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付元
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值