Python基础(十四):while循环与break、continue关键字
前面我们已经学习了for循环,今天再带着大家讲述一下while循环。那么for循环和while循环,到底有什么区别呢?
Python中for循环和while循环本质上是没有区别的,但是在实际应用上,针对性不太一样。
- for循环,主要应用在遍历中,体现的是遍历二字;
- while循环,主要用于判断符合条件下循环,体现的是条件二字;
while循环语法结构
while循环,表示程序一直运行,直到指定的条件不再满足时,就终止程序。while循环的语法结构如下:
while 判断条件(condition):
执行代码块儿(statements)……
当判断条件为True时,则执行代码块儿;一直循环到判断条件为False时,退出循环。由此可以看出,while循环必须要有一个退出条件。
+=和-=用做退出条件
观察上述while循环的语法,while关键字后面,跟的是一个“判断条件”,这个判断条件用于计数,最开始这个判断条件一直为True,我们需要借助+=和-=符号,让这个计数不断增加 或 减少,直到这个判断条件为False,退出while循环。
概念大家好好体会一遍,可能不太好理解,咋们直接上例子。
+=用做退出条件
counts = 1
while counts <= 5:
print("我吃饱了!")
counts += 1
结果如下:
-=用做退出条件
counts = 5
while counts > 0:
print("我好饿!")
counts -= 1
结果如下:
我相信大家看了例子后,应该很容易明白,这里就不再赘述,不管是使用+=正向计数,还是使用-=反向计数,这里都要根据实际情况判断。
break和continue关键字
有时候,当程序循环到某个条件的时候,后续的循环没必要执行了,再执行也是耗费资源,所以可以终止循环,这样可以提高程序的执行效率。
在Python中,有continue和break两个关键字,供我们使用。记住一点:continue和break两个关键字,都可以结合for循环和while循环来使用。
用一个案例,说明两者的区别
想象一个面试官,面试十个人的场景,每次进入一个人。
当面试某一个人的时候,突然有人打电话对面试官说,他家着火了,这相当于break,之后的面试就不用再进行了,相当于循环终止了。
当面试某一个人的时候,别人问你1 + 1等于多少,你说不会,那么面试官说,换下一个人,这里相当于continue,只是终止当前的这一次循环,后面的循环还是要一一执行的。
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之后,不会执行")
结果如下:
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
结果如下:
Python基础(十四):while循环与break、continue关键字的更多相关文章
- python 基础(十四) 正则表达式
正则表达式 概念: 正则匹配就是一个模糊的匹配 只要符合我的匹配规则 就会认为是正确的数据(精确的匹配) 1.[] #代表原子表把想要匹配的内容写入原子表中 匹配包含的任意一位字符 [a] ...
- python基础十四之匿名函数
匿名函数 处理简单问题的简化函数,关键字lambda. # 格式:函数名 = lambda 参数:返回值 anonymity = lambda s: s ** 0.5 print(anonymity( ...
- Python基础1:if条件判断 break/continue语句
计算机之所以能做很多自动化的任务,因为它可以自己做条件判断. Python中,if语句被用来进行判断,它的语法结构是: 1 if 判断条件: 2 执行语句…… 3 var = input(" ...
- Python 基础语法(四)
Python 基础语法(四) --------------------------------------------接 Python 基础语法(三)------------------------- ...
- 孤荷凌寒自学python第二十四天python类中隐藏的私有方法探秘
孤荷凌寒自学python第二十四天python类中隐藏的私有方法探秘 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 今天发现了python的类中隐藏着一些特殊的私有方法. 这些私有方法不管我 ...
- 孤荷凌寒自学python第十四天python代码的书写规范与条件语句及判断条件式
孤荷凌寒自学python第十四天python代码的书写规范与条件语句及判断条件式 (完整学习过程屏幕记录视频地址在文末,手写笔记在文末) 在我学习过的所有语言中,对VB系的语言比较喜欢,而对C系和J系 ...
- Bootstrap<基础十四> 按钮下拉菜单
使用 Bootstrap class 向按钮添加下拉菜单.如需向按钮添加下拉菜单,只需要简单地在在一个 .btn-group 中放置按钮和下拉菜单即可.也可以使用 <span class=&qu ...
- 初学 Python(十四)——生成器
初学 Python(十四)--生成器 初学 Python,主要整理一些学习到的知识点,这次是生成器. # -*- coding:utf-8 -*- ''''' 生成式的作用: 减少内存占有,不用一次性 ...
- Python第二十四天 binascii模块
Python第二十四天 binascii模块 binascii用来进行进制和字符串之间的转换 import binascii s = 'abcde' h = binascii.b2a_hex(s) # ...
- Python第十四天 序列化 pickle模块 cPickle模块 JSON模块 API的两种格式
Python第十四天 序列化 pickle模块 cPickle模块 JSON模块 API的两种格式 目录 Pycharm使用技巧(转载) Python第一天 安装 shell 文件 Py ...
随机推荐
- free Google translator for the personal website
free Google translator for the personal website https://html5.xgqfrms.xyz/
- Flutte 什么是Widget,RenderObjects和Elements
原文 Opacity API文档 有没有想过Flutter如何获取这些小部件并将其实际转换为屏幕上的像素? 您可能已经知道如何使用StatelessWidget和StatefulWidget.但是那些 ...
- 【C#】反射的用法及效率对比
反射实例化类 public class Person { public string Name { get; set; } public Person(string name) { this.Name ...
- NGK内存将为全球投资者创造新的财富增长机会
2020年,随着BTC的持续上涨带动了整个区块链市场的持续加温,同时金融市场也对金融体制做出了改变,关于金融和区块链的结合越来越被人们所认可,在此基础上,DeFi行业借此迎来了快速发展,据不完全统计, ...
- 原生javascript开发计算器实例
计算器的主要作用是进行数字运算,开发一个计算器功能的web实例,有助于更好的掌握js基础的数字运算能力. 本实例详细分析一个js计算器的开发步骤,学习本教程时最好先具备一些基础的js知识. 计算器包括 ...
- 使用stress进行压力测试
本文转载自使用stress进行压力测试 导语 stress,顾名思义是一款压力测试工具.你可以用它来对系统CPU,内存,以及磁盘IO生成负载. 安装stress 几乎所有主流的linux发行版的软件仓 ...
- ForkJoinPool大型图文现场(一阅到底 vs 直接收藏)
知识回顾 并发工具类我们已经讲了很多,这些工具类的「目标」是让我们只关注任务本身,并且忽视线程间合作细节,简化了并发编程难度的同时,也增加了很多安全性.工具类的对使用者的「目标」虽然一致,但每一个工具 ...
- 微信小程序:页面全局参数(注意不是小程序的全局变量globalData)
为什么要使用页面全局参数:方便使用数据. 由于总页数需要再另外的一个方法中使用,所以要把总页数变成一个页面全局参数.因为取数据使用this.xxx即可,中间不用加data,给页面全局参数赋值页方便,直 ...
- SpringBoot使用谷歌方式生成图片验证码
1.新建一个springboot的项目 2.导入坐标 <dependency> <groupId>com.github.penggle</groupId> < ...
- C++Template 模版的本质
我想知道上帝的構思,其他的都祇是細節. ...