Python必须掌握的200道面试题

基础笔试题

基础算法题

首页 > Python必须掌握的200道面试题 > 基础笔试题 > 1.12节:循环结构中的else语句是多余的吗?

1.12节:循环结构中的else语句是多余的吗?

薯条老师 2020-06-22 07:32:04 233866 0

编辑 收藏

教程引言:

荟萃经典的Python面试题,包括但不限于基础知识,高阶知识,算法,以及开放性回答等必考的面试题。

循环控制结构中的else语句是多余的吗?

循环控制结构中的else语句,它表达的是循环正常迭代的一种延续(收尾操作),如果循环被中断执行,那意味着打破了这种正常迭代的状态。比如遍历从1到100之间的所有自然数,在正常情况下,需要迭代100次。Python是一种简单,优雅的编程语言,在循环结构中设计这样一种else结构,可以让代码的逻辑结构更加清晰。以下为判断是否为合数的一段关键代码

is_composite_number = True
for _ in range(2, 100):
    if number % _ == 0:
        # 如果余数为0,说明为合数,执行break退出循环
        break
else:
    # 循环正常退出,说明不为合数,逻辑很清晰  
    is_composite_number = False

如果没有这样的else结构,那么需要将记录状态的flag变量耦合到循环体中:

is_composite_number = False
for _ in range(2, 100):
    if number % _ == 0:
        # 如果余数为0,说明为合数,执行break退出循环
        is_composite_number = True
        break

关注微信公众号:薯条编程,公众号后台回复"Python资料",免费领取Python电子书,以及学习Python视频课程。

小班授课,薯条老师一对一教学,火热报名中,点击了解线下就业培训。


欢迎 发表评论: