[Python]循环中的else,break和continue详解

原创文章,欢迎转载。转载请注明:转载自 祥的博客

原文链接:http://blog.csdn.net/humanking7/article/details/43792425


在看Python的文档的时候看到了forwhile语句和C语言中有一个最大的区别—可以有一个可选的else语句。这个语句的执行触发机制让我不大明白,通过代码测试才了解了什么情况下触发else语句。“凡存在,皆合理”,Python的设计者肯定是有他的目的,现在咱们来探究一番。

for语句为例,开发环境Python3.4

Python循环中的else作用

循环中else的存在是为了让代码更清晰,更加简洁。下面举个例子给大家看看,分别用 传统的写法带else的写法 实现作用相同的代码

传统C格式的for循环写法

    myList = [1,2,3,4,5,6,7]
    isFound = False

    for item in myList:
        if item == 4:
            isFound = True
            print('List 有 4')
            break

    if not isFound:
        print('List 没有 4')

带else语句for循环写法

    myList = [1,2,3,4,5,6,7]

    for item in myList:
        if item == 4:
            isFound = True
            print('List 有 4')
            break    
    else:
        print('List 没有 4')

对比两处代码,不难发现相较于传统的for循环写法,带else语句的写法更加的简洁,而且少了isFound这个变量以及跳出循环后的这个if判断语句

总结

for … else结构

  1. for里面的语句和普通的(没有else的for语句)没有区别;
  2. else中的语句会在循环正常执行完后执行;
  3. for中语句通过break跳出而中断时,不会执行else

最后总结一句,for ... else结构一般要和break一起使用,才能体现这个结构的强大之处(至少我是这么觉得的,不知还有什么其他情况,希望网友不吝赐教)。

while ... else结构也符合上述条件。

Python循环中的continue和break

continuebreak语句其实就和C语言的用法是一样的,只是在for ... else结构结构中

  1. for中语句通过break跳出而中断时,不会再执行else中的内容;
  2. 而将continue语句和寻常语句无异,只要不是不通过break,光有continue会进入else语句

continue代码示例

代码如下:

    for x in range(1, 4):
        print(x, 'for语句')
        continue
        print(x, 'continue语句后')
    else:
        print(x, 'else语句')

执行结果:

1 for语句
2 for语句
3 for语句
3 else语句

break代码示例

代码如下:

    for x in range(1, 4):
        print(x, 'for语句')
        break
        print(x, 'break语句后')
    else:
        print(x, 'else语句')

执行结果:

1 for语句

donate

  • 19
    点赞
  • 31
    收藏
    觉得还不错? 一键收藏
  • 2
    评论
### 回答1: Python循环结构breakcontinue的区别是: - break语句用于终止整个循环,一旦break语句被执行,循环将立即停止,不再执行剩余的循环语句,并跳出循环。 - continue语句用于跳过本次循环,一旦continue语句被执行,循环将会跳过本次循环剩余的语句,并开始下一次循环。 需要注意的是,breakcontinue只能在循环语句使用,而不能在其他语句使用。 ### 回答2: 在Python循环结构breakcontinue都用于控制循环的执行流程,但它们的作用有所不同。 break用于立即终止当前的循环,并跳出循环体。当在循环内部遇到break语句时,循环会立即终止,程序会跳出整个循环体,继续执行循环后的代码。因此,break通常用于在满足某个条件时,提前结束循环。 例如: ```python for i in range(1, 10): if i == 5: break print(i) ``` 上述代码,当i的值等于5时,break语句被执行,循环立即终止,输出结果为1、2、3、4。 而continue语句则用于结束当前一次循环,进入下一次循环的开始处。当在循环内部遇到continue语句时,程序会跳过当前循环剩余的代码,直接进入下一次循环的执行。因此,continue通常用于跳过某些不满足条件的迭代。 例如: ```python for i in range(1, 5): if i == 3: continue print(i) ``` 上述代码,当i的值等于3时,continue语句被执行,直接进入下一次循环。因此,输出结果为1、2、4。 综上所述,break用于立即终止整个循环并跳出循环体,而continue用于结束当前一次循环,直接进入下一次循环的执行。 ### 回答3: 在Python循环结构,`break`和`continue`是用来控制循环的关键字,它们的作用和用法有一些不同。 `break`关键字用于立即终止当前的循环,不再执行循环之后的代码。当某个条件满足时,使用`break`可以跳出循环,不再继续执行下面的循环语句。例如,在一个`for`或`while`循环,当某个元素或条件满足后,可以使用`break`来提前终止循环。这样可以节省了不必要的循环和计算。 `continue`关键字用于跳过当前循环剩余的代码,直接进入下一次循环。当某个条件满足时,使用`continue`可以跳过该轮循环剩余的代码,直接进入下一轮循环。`continue`的作用是跳过某些特定情况下不必要的代码,以提高程序的执行效率。 总结起来,`break`用于终止整个循环并退出,而`continue`用于结束当前循环的迭代,进入下一次循环。`break`是跳出循环的关键字,而`continue`是跳过循环的关键字。它们的作用不同,但都可以用来改变循环的控制流程,根据具体情况选择使用

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值