Python基础 while循环与break、continue关键字
作者:zhanglei 发布时间:2023-11-19 03:41:42
前言:
Python
中for循环和while循环本质上是没有区别的,但是在实际应用上,针对性不太一样。
for循环,主要应用在遍历中,体现的是遍历二字;
while
循环,主要用于判断符合条件下循环,体现的是条件二字;
1. while循环语法结构
while
循环,表示程序一直运行,直到指定的条件不再满足时,就终止程序。while循环的语法结构如下:
while 判断条件(condition):
执行代码块儿(statements)……
当判断条件为True
时,则执行代码块儿;一直循环到判断条件为False时,退出循环。由此可以看出,while
循环必须要有一个退出条件。
2. +=和-=用做退出条件
观察上述while
循环的语法,while关键字后面,跟的是一个“判断条件”,这个判断条件用于计数,最开始这个判断条件一直为True,我们需要借助+=和-=符号,让这个计数不断增加 或 减少,直到这个判断条件为False
,退出while
循环。
概念大家好好体会一遍,可能不太好理解,咋们直接上例子。
2.1 +=用做退出条件
counts = 1
while counts <= 5:
print("我吃饱了!")
counts += 1
结果如下:
2.2 -=用做退出条件
counts = 5
while counts > 0:
print("我好饿!")
counts -= 1
结果如下:
我相信大家看了例子后,应该很容易明白,这里就不再赘述,不管是使用+=正向计数,还是使用-=反向计数,这里都要根据实际情况判断。
3. break和continue关键字
有时候,当程序循环到某个条件的时候,后续的循环没必要执行了,再执行也是耗费资源,所以可以终止循环,这样可以提高程序的执行效率。
在Python
中,有continue
和break
两个关键字,供我们使用。记住一点:continue
和break
两个关键字,都可以结合for
循环和while
循环来使用。
3.1 用一个案例,说明两者的区别
想象一个面试官,面试十个人的场景,每次进入一个人。
当面试某一个人的时候,突然有人打电话对面试官说,他家着火了,这相当于break
,之后的面试就不用再进行了,相当于循环终止了。
当面试某一个人的时候,别人问你1 + 1等于多少,你说不会,那么面试官说,换下一个人,这里相当于continue
,只是终止当前的这一次循环,后面的循环还是要一一执行的。
3.2 continue结合for循环和while循环使用
我们已经知道了,countinue
用于结束当前循环,当前循环后的代码块儿不会在执行。但是整个循环还是会继续下去。
① continue + for循环
for i in range(5):
if i == 3:
print("continue之前的代码,会执行")
continue
print("continue之后的代码,不会执行")
结果如下:
② continue + while循环
i = 5
while i > 0:
i -= 1
if i >= 3:
print("我在continue之前,会执行")
continue
print("我在continue之后,不会执行")
结果如下:
3.3 break结合for循环和while循环使用
break
就比较狠了,直接终止循环。
① break + for循环
for i in range(5):
print(f"i = {i}")
if i >= 3:
break
结果如下:
② break + while循环
对于while
循环,我这里写了两段代码。
i = 0
while i <= 5:
i += 1
print(f"i = {i}")
if i >= 3:
break
-----------------------
i = 0
while i <= 5:
print(f"i = {i}")
if i >= 3:
break
i += 1
结果如下:
来源:https://zhuanlan.zhihu.com/p/418092151
猜你喜欢
- 简介如何简单的使用python来实现将一部视频转换为字符画视频的效果。 其实,大家都知道视频就是一帧一帧的图片构成的。  
- 多值运动,也就是对于某个对象来说,不仅仅只是其中一个属性值在变化,而是好多个,比如宽,高,字体,透明度等等同时变化当然了,多值运动会产生一个
- <% '****************************** '函数:Chec
- 一 描述720. 词典中最长的单词 - 力扣(LeetCode) (leetcode-cn.com)给出一个字符串数组 words
- 所有数据库和状态文件都包含在其中。但是,在确定数据目录内容的布局中管理员有某些职责。本文讨论为什么要移动数据目录的各个部分(甚至是字典本身)
- js 对url进行编码和解码三种编码和解码函数encodeURI和 decodeURI它着眼于对整个URL进行编码,因此除了常见的符号以外,
- 在这种配置下我们要实现关键词不区分大小写搜索并高亮显示要借助ASP的正则处理了,请看下面代码:<% Function&nbs
- 日一二三四五六'.split('') ['日','一','二
- vbscript中,错误处理使用on error resume next来完成,如果在你的代码里加入这一句,在这句之后的其他代码如果出现错误
- 发现问题Python中的urllib模块用来处理url相关的操作,unquote方法对应javascript中的urldecode方法,它对
- prototype框架最早是出于方便Ruby开发人员进行JavaScript开发所构建的,从这个版本上更加体现的淋漓尽致。比起1.3.1版本
- 如何制作一个小巧的购物车?主程序如下:cartkit.aspClass CartKitSub CreateCart()&
- //1、运行到C盘根目录 //2、输入:SET ORACLE_SID = 你的SID名称 3、输入:sqlplus/nolog 4、输入:c
- 如何用php实现APP消息推送现在有很多的消息推送厂商,比如阿里云的消息推送,极光推送,融云的消息推送。他们的原理都是把sdk内置在app里
- 本文分析了PHP中$GLOBALS['HTTP_RAW_POST_DATA']和$_POST的区别。分享给大家供大家参考,具
- 下列语句部分是Mssql语句,不可以在access中使用。SQL分类:DDL—数据定义语言(CREATE,ALTER,DROP,DECLAR
- 项目介绍背景:DC竞赛比赛项目,运用回归模型进 * 价预测。数据介绍:数据主要包括2014年5月至2015年5月美国King County的房
- Codeigniter支持缓存技术,以达到最快的速度。尽管CI已经相当高效了,但是网页中的动态内容、主机的内存CPU和数据库读取速度等因素直
- 译者的话:寡妇、孤儿、捧打鸳鸯,这些场面足以让你有想哭的冲动,但当你在排版设计时,同样会碰到这些问题,甚至可能更槽。虽说今天的页面排版软件可
- 我写过一个外部模块扩展,现在开始看PHP源码中的mysql扩展,它是可以被集成到PHP内部的,所以应该算是内置的扩展了。 该扩展需要用到my