您当前的位置:首页 > 电脑百科 > 程序开发 > 语言 > Python

Python语法解析

时间:2019-09-10 11:29:51  来源:  作者:

大多数编程语言都提供了 if...else... 语句,即表示如果满足条件就做这件事,否则就做另外一件事。同时,在 Python 中 else 除了可以与 if 搭配使用,还有其他特别的语法: for…else …while…else …try…except...else 。


我们先来看一段代码,如下:

Python中for…else… 与while…else … 语法解析

 

上面的代码中,打印结果会是什么呢?我们执行一下,打印信息如下:

Python中for…else… 与while…else … 语法解析

 

我们可以发现,如果循环块中代码正常执行,则执行else代码块,如果前面的循环未执行完,则不执行else代码块。这与 if… else… 刚好相反,在 if… else… 语句中如果if代码块没有执行,则执行else代码块。

我们看一下官方文档中是如何解释的:

A break statement executed in the first suite terminates the loop without executing the else clause’s suite. A continue statement executed in the first suite skips the rest of the suite and continues with the next item, or with the else clause if there is no next item.

当用 break 关键字终止当前循环时,则不会执行 else 语句。而使用 continue 关键字快速进入下一轮循环,或者没有使用其他关键字,循环的正常结束后,就会执行 else 语句。


同样,我们再看一下 while…else … 语句,如下:

Python中for…else… 与while…else … 语法解析

 

我们执行上面代码,打印信息如下:

Python中for…else… 与while…else … 语法解析

 

我们可以发现这与 for... else... 语法相同,如果循环块中代码正常执行,则执行else代码块,如果前面的循环未执行完,则不执行else代码块。


那么这种用法有哪些场景会使用到呢?

答:似乎除了下面这种场景,几乎没有其他场景会用到该语法。

当我们使用 for 循环遍历列表查找某个元素(或者是更加复杂的数据结构)时,如果找到了就立刻退出循环,如果遍历完所有元素还没找到,则需要以另外一种形式(如,异常)的方式告知,此时,用 for... else... 会非常的优雅,如下:

Python中for…else… 与while…else … 语法解析

 

如果不使用 for... else... , 那么还需特意创建一个标志位来标记是否已经找到,如下:

Python中for…else… 与while…else … 语法解析

 

最后,需要注意因为这种语法在实际应用中比较稀有,也容易与 if... else... 混淆,建议用到此语法时,添加注释说明,避免引起其他误操作。



Tags:Python 语法解析   点击:()  评论:()
声明:本站部分内容及图片来自互联网,转载是出于传递更多信息之目的,内容观点仅代表作者本人,如有任何标注错误或版权侵犯请与我们联系(Email:2595517585@qq.com),我们将及时更正、删除,谢谢。
▌相关推荐
大多数编程语言都提供了 if...else... 语句,即表示如果满足条件就做这件事,否则就做另外一件事。同时,在 Python 中 else 除了可以与 if 搭配使用,还有其他特别的语法: for&helli...【详细内容】
2019-09-10  Tags: Python 语法解析  点击:(150)  评论:(0)  加入收藏
▌简易百科推荐
大家好,我是菜鸟哥,今天跟大家一起聊一下Python4的话题! 从2020年的1月1号开始,Python官方正式的停止了对于Python2的维护。Python也正式的进入了Python3的时代。而随着时间的...【详细内容】
2021-12-28  菜鸟学python    Tags:Python4   点击:(1)  评论:(0)  加入收藏
学习Python的初衷是因为它的实践的便捷性,几乎计算机上能完成的各种操作都能在Python上找到解决途径。平时工作需要在线学习。而在线学习的复杂性经常让人抓狂。费时费力且效...【详细内容】
2021-12-28  风度翩翩的Python    Tags:Python   点击:(1)  评论:(0)  加入收藏
Python 是一个很棒的语言。它是世界上发展最快的编程语言之一。它一次又一次地证明了在开发人员职位中和跨行业的数据科学职位中的实用性。整个 Python 及其库的生态系统使...【详细内容】
2021-12-27  IT资料库    Tags:Python 库   点击:(2)  评论:(0)  加入收藏
菜单驱动程序简介菜单驱动程序是通过显示选项列表从用户那里获取输入并允许用户从选项列表中选择输入的程序。菜单驱动程序的一个简单示例是 ATM(自动取款机)。在交易的情况下...【详细内容】
2021-12-27  子冉爱python    Tags:Python   点击:(4)  评论:(0)  加入收藏
有不少同学学完Python后仍然很难将其灵活运用。我整理15个Python入门的小程序。在实践中应用Python会有事半功倍的效果。01 实现二元二次函数实现数学里的二元二次函数:f(x,...【详细内容】
2021-12-22  程序汪小成    Tags:Python入门   点击:(32)  评论:(0)  加入收藏
Verilog是由一个个module组成的,下面是其中一个module在网表中的样子,我只需要提取module名字、实例化关系。module rst_filter ( ...); 端口声明... wire定义......【详细内容】
2021-12-22  编程啊青    Tags:Verilog   点击:(9)  评论:(0)  加入收藏
运行环境 如何从 MP4 视频中提取帧 将帧变成 GIF 创建 MP4 到 GIF GUI ...【详细内容】
2021-12-22  修道猿    Tags:Python   点击:(6)  评论:(0)  加入收藏
面向对象:Object Oriented Programming,简称OOP,即面向对象程序设计。类(Class)和对象(Object)类是用来描述具有相同属性和方法对象的集合。对象是类的具体实例。比如,学生都有...【详细内容】
2021-12-22  我头秃了    Tags:python   点击:(9)  评论:(0)  加入收藏
所谓内置函数,就是Python提供的, 可以直接拿来直接用的函数,比如大家熟悉的print,range、input等,也有不是很熟,但是很重要的,如enumerate、zip、join等,Python内置的这些函数非常...【详细内容】
2021-12-21  程序员小新ds    Tags:python初   点击:(5)  评论:(0)  加入收藏
Hi,大家好。我们在接口自动化测试项目中,有时候需要一些加密。今天给大伙介绍Python实现各种 加密 ,接口加解密再也不愁。目录一、项目加解密需求分析六、Python加密库PyCrypto...【详细内容】
2021-12-21  Python可乐    Tags:Python   点击:(8)  评论:(0)  加入收藏
最新更新
栏目热门
栏目头条