Python中for或while块末尾的“else”有啥用? [复制]

Posted

技术标签:

【中文标题】Python中for或while块末尾的“else”有啥用? [复制]【英文标题】:What's the use of "else" at the end of a for or while block in Python? [duplicate]Python中for或while块末尾的“else”有什么用? [复制] 【发布时间】:2020-04-12 13:33:21 【问题描述】:

我在 Python 方面已经有了很多经验,但最近我看到有人在 whilefor 块的末尾使用 else。我很好奇,决定测试一下:

for i in range(2):
    print(i)
else:
    print("Something...")

输出:

0
1
Something...

使用或者不使用else,代码都会执行同样的方式,那么这个有什么用呢?

【问题讨论】:

你可以阅读in the documentation。 【参考方案1】:

elseforwhile 块之后当且仅当块正常终止时才会执行。如果您通过break 或异常离开,则会跳过该else 块。

for i in range(2):
    print(i)
    break
else:
    print("Something...")

输出:

0

【讨论】:

以上是关于Python中for或while块末尾的“else”有啥用? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

Python 循环 while,for语句

Python控制流程上下文管理器

流畅的python第十五章上下文管理器和else块学习记录

Python基础if,for,while流程简介

Python3 循环_break和continue语句及循环中的else子句

Python 循环语句