python - 请解释continue语句

标签 python python-3.x continue

谁能解释一下 continue 语句,我一直在尽力按照我的理解来分解它,但所有的努力都是徒劳的。这是我在 python 文档中找到的示例程序,但我无法理解它。

for num in range(2, 10):
    if num % 2 == 0:
        print("Found an even number", num)
        continue
    else:
        print("Found a number", num)

最佳答案

continue 语句使 Python 跳过循环的当前迭代的其余部分,并跳转到下一次迭代的开头。

参见 this documentation page对于 Python 3。该页面上的原始示例是:

>>> 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

当遇到continue时,跳过循环末尾的print,再次执行到for获取下一次迭代。请注意对于偶数,如何打印“找到一个偶数”,但打印“找到一个数字”。这是因为 continue 跳过了循环体的其余部分。


您对示例的修改 - 插入 else - 使 continue 过时,因为 print("Found a number", num) 无论如何都不会执行(它位于 else)分支中。

通过这种方式,您会发现 continue(以及 break)通常是 if...else 的替代控制流机制.使用哪种取决于情况和风格偏好。

关于python - 请解释continue语句,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41387977/

相关文章:

python - Scrapy:根据条件停止先前的解析功能

python - 根据匹配的列名和列值提取行值

python - 有没有办法通过给定的请求格式文本来初始化 HTTP 请求?

python - 尝试构建逻辑解析器时出错

python - 如何在过滤后保留分配给查询集对象的属性?备择方案?

java - 为什么在Java while循环中需要使用 "break"和 "continue"语句?

python - 如何通过 3G 连接远程更新在 Raspberry Pi 上运行的 Python 程序?

python - 尝试比较 2 个大文件的行并保留匹配的行,但没有匹配的行

c++ - continue 语句真的会增加 C++ 中的循环速度吗?

javascript - 为什么 "continue"语句在 JavaScript 中是错误的?