Python中else怎么用?else的用法总结

 更新时间:2022年05月20日 10:41:27   作者:py_tester  
这篇文章主要介绍了Python中else的用法总结,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教

关于else的用法总结

本文讨论Python的for…else、while…else、try..except…else等语法

Python中的for、while是在循环体内没有break语句、没有return语句,或者没有异常出现时才执行else语句,try..except…else是在try中无异常产生时执行,注意不包括continue。

总的来说,是for、while、try语句中‘没毛病’时才执行,而在if..else语句中是if语句判断为假(有毛病)才执行else,这一点要区分开来

下面举例说明下while..else作用,字符串有s1.find(s2)方法,作用是在字符串s1中查找s2,若找到就返回其索引值,不存在返回-1,但是列表却没find方法,以下用while…else语句实现list_find方法:

或者模拟list.index()的实现:

最后关于try….except1..except2…else…finally的执行顺序:是try执行完没有任何问题(即各个except语句均没有捕获到异常)时,再去执行else语句,最后执行finally首尾工作,若执行过程中只要有except捕获到异常,就跳过else直接执行finally;

你不知道的else用法

if-else

无论在哪个语言,if-else基本上都是通用的分支选择结构了。这里就简单介绍一下。

if 3%2==1:
    print("if")
else:
    print("else")

if-else 满足if则进入if语块,否则进入else语块 if 和else 只有一个语块代码会被执行。

for-else

for-else搭配使用,我也只是在python的学习过程中碰到过。通过测试用例来比较一下。

fruits=["apple","orange","pear"]
for item in fruits:
    if item=="apple":
        print("apple")
else:
    print("for-else")

↓↓↓

apple
for-else

这里for循环正常执行结束,然后执行了else语块的代码。

fruits=["apple","orange","pear"]
for item in fruits:
    if item=="apple":
        print("break")
        break
else:
    print("for-else")

↓↓↓

break

当在for循环中执行break语句跳出循环时,else语块没有执行。

即for-else搭配使用时,for循环没有因为break语句跳出循环,则会执行else语句。

while-else

while-else与for-else类似,均为前面的循环正常结束时else语块会被执行。

i=5
while i>0:
    i=i-1
else:
    print("while-else")

↓↓↓

while-else

while语句正常执行,当while条件为false时结束while循环,进入else语块。

i=5
while i>0:
    i=i-1
    if i==3:
        print("break")
        break
else:
    print("while-else")

↓↓↓

break

while语句因为break语句跳出循环,else语块没有被执行。

while-else搭配使用时,while循环没有因为break语句跳出循环,则会执行else语句

备注:上述例子的break不一定非得是break,只要能跳出当前循环的语句都会跳出else语块。else如果还有其他用法,请在下方留言一起学习。

以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。

相关文章

  • python类的私有属性和公共属性说明

    python类的私有属性和公共属性说明

    这篇文章主要介绍了python类的私有属性和公共属性说明,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
    2022-05-05
  • Django中间件工作流程及写法实例代码

    Django中间件工作流程及写法实例代码

    这篇文章主要介绍了Django中间件工作流程及写法实例代码,分享了相关代码示例,小编觉得还是挺不错的,具有一定借鉴价值,需要的朋友可以参考下
    2018-02-02
  • Python开发最牛逼的IDE——pycharm

    Python开发最牛逼的IDE——pycharm

    这篇文章给大家介绍了Python开发最牛逼的IDE——pycharm,主要是介绍python IDE pycharm的安装与使用教程,非常不错,具有一定的参考借鉴价值,需要的朋友参考下吧
    2018-08-08
  • bpython 功能强大的Python shell

    bpython 功能强大的Python shell

    bpython是一个不错的Python解释器的界面,本文带着大家了解认识一下bpython,感兴趣的小伙伴们可以参考一下
    2016-02-02
  • matplotlib共享坐标轴的实现(X或Y坐标轴)

    matplotlib共享坐标轴的实现(X或Y坐标轴)

    在作图的过程中,我们经常会遇到子图共用坐标轴的情况,或是共用横轴标轴,也可能是纵坐标轴。本文就介绍了matplotlib共享坐标轴,感兴趣的可以了解一下
    2021-05-05
  • Python下载网络文本数据到本地内存的四种实现方法示例

    Python下载网络文本数据到本地内存的四种实现方法示例

    这篇文章主要介绍了Python下载网络文本数据到本地内存的四种实现方法,涉及Python网络传输、文本读写、内存I/O、矩阵运算等相关操作技巧,代码中包含了较为详尽的注释说明便于理解,需要的朋友可以参考下
    2018-02-02
  • Python实现合并同一个文件夹下所有txt文件的方法示例

    Python实现合并同一个文件夹下所有txt文件的方法示例

    这篇文章主要介绍了Python实现合并同一个文件夹下所有txt文件的方法,涉及Python针对文件的遍历、读取、写入等相关操作技巧,需要的朋友可以参考下
    2018-04-04
  • Python中内建模块collections如何使用

    Python中内建模块collections如何使用

    在本篇内容里小编给大家整理的是关于Python中内建模块collections的用法,有需要的朋友们可以参考下。
    2020-05-05
  • Python利用ansible分发处理任务

    Python利用ansible分发处理任务

    这篇文章主要介绍了Python利用ansible分发处理任务的相关资料,需要的朋友可以参考下
    2015-08-08
  • python调用动态链接库的基本过程详解

    python调用动态链接库的基本过程详解

    这篇文章主要介绍了python调用动态链接库的基本过程详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2019-06-06

最新评论