break 和 continue 语句, 以及循环中的 else 子句

转自: https://blog.csdn.net/weixin_34409357/article/details/93881089

 

来源:http://www.pythondoc.com/pythontutorial3/controlflow.html#break-continue-else

4.4. break 和 continue 语句, 以及循环中的 else 子句

break 语句和 C 中的类似,用于跳出最近的一级 for 或 while 循环。

循环可以有一个 else 子句;它在循环迭代完整个列表(对于 for )或执行条件为 false (对于 while)时执行,但循环被 break 中止的情况下不会执行。以下搜索素数的示例程序演示了这个子句:

>>> for n in range(2, 10):
...     for x in range(2, n):
...         if n % x == 0:
...             print(n, 'equals', x, '*', n//x)
...             break
...     else:
...         # loop fell through without finding a factor
...         print(n, 'is a prime number')
...
2 is a prime number
3 is a prime number
4 equals 2 * 2
5 is a prime number
6 equals 2 * 3
7 is a prime number
8 equals 2 * 4
9 equals 3 * 3

(Yes, 这是正确的代码。看仔细:else 语句是属于 for 循环之中, 不是 if 语句。)

与循环一起使用时,else 子句与 try 语句的 else 子句比与 if 语句的具有更多的共同点:try 语句的else 子句在未出现异常时运行,循环的 else 子句在未出现 break 时运行。更多关于 try 语句和异常的内容,请参见 异常处理

continue 语句是从 C 中借鉴来的,它表示循环继续执行下一次迭代:

>>> for num in range(2, 10):
...     if num % 2 == 0:
...         print("Found an even number", num)
...         continue
...     print("Found a number", num)
Found an even number 2
Found a number 3
Found an even number 4
Found a number 5
Found an even number 6
Found a number 7
Found an even number 8
Found a number 9

转载于:https://www.cnblogs.com/stevenzeng/p/5249554.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
回答: 在Python,for循环与else语句可以结合使用。当for循环完成其所有迭代对象的循环,或者迭代对象为空时,如果存在else子句,那么else子句会被执行。但是,如果在循环过程使用break语句提前退出循环,那么else子句将不会被执行。简而言之,只有在循环正常完成或者迭代对象为空时,才会执行for循环的else分支。在else分支,可以安排一些在循环结束后执行的收尾工作。需要注意的是,for循环的else分支在实际编程使用较少,了解并能够理解相关代码即可。\[2\] 另外,for循环还可以与其他高级功能结合使用,比如嵌套for循环使用break语句提前退出整个for循环,以及使用continue语句仅终止当前循环。嵌套for循环可以用于处理多维数据结构或者进行多层循环操作。例如,可以使用两个for循环打印九九乘法表。\[3\]在嵌套for循环,外层循环控制行数,内层循环控制列数,通过打印每个元素的乘积来输出九九乘法表。 #### 引用[.reference_title] - *1* [python的for循环搭配else](https://blog.csdn.net/ly17809212771/article/details/121095412)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] - *2* *3* [12.原来for循环也可以与else搭配,但需要注意break情况-for循环(二)](https://blog.csdn.net/weixin_43838715/article/details/103108770)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v91^control_2,239^v3^insert_chatgpt"}} ] [.reference_item] [ .reference_list ]

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值