MST

星途 面试题库

面试题:Python中for循环结束后的else子句使用

在Python中,for循环有一个可选的else子句。请编写一个示例代码,展示for循环正常结束时else子句的执行情况,以及在循环中途使用break语句时else子句的不执行情况,并解释原因。
46.4万 热度难度
编程语言Python

知识考点

AI 面试

面试题答案

一键面试
# for循环正常结束时else子句执行的示例
for i in range(3):
    print(i)
else:
    print("for循环正常结束,执行else子句")

# for循环中途使用break语句时else子句不执行的示例
for j in range(3):
    if j == 1:
        break
    print(j)
else:
    print("此else子句不会执行")

解释:在Python中,for循环的else子句会在循环正常完成(即没有遇到break语句)时执行。当循环遇到break语句提前终止时,else子句不会执行。所以第一个示例中,for循环正常遍历完range(3),因此执行了else子句;而第二个示例中,当j等于1时,执行了break语句,循环提前结束,所以else子句没有执行。