揭秘while循环中continue的神奇作用:它如何让代码跳过某些步骤直接进入下一轮循环


`while` 循环中的 `continue` 语句在编程中是一个强大的工具,它允许我们控制循环的执行流程。当在循环内部遇到 `continue` 语句时,程序会立即结束当前循环迭代,并跳到下一次迭代。这听起来可能有些抽象,但通过一些具体的例子,我们可以更好地理解 `continue` 的作用。

让我们从一个简单的例子开始。假设我们有一个列表,我们想打印出其中的偶数,但跳过所有的奇数。

python

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

for i in numbers:

if i % 2 == 0:

print(i)

这段代码会打印出 `2, 4, 6, 8, 10`,即列表中的所有偶数。

现在,我们尝试使用 `while` 循环来完成同样的任务:

python

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

i = 0

while i < len(numbers):

if numbers[i] % 2 == 0:

print(numbers[i])

i += 1

这段代码也能达到同样的效果,打印出所有的偶数。

如果我们想在 `while` 循环中使用 `continue` 语句,代码会是这样的:

python

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

i = 0

while i < len(numbers):

if numbers[i] % 2 == 1: 注意这里是判断奇数,而不是偶数

i += 1

continue

print(numbers[i])

i += 1

在这段代码中,当 `numbers[i]` 是奇数时,`continue` 语句会立即结束当前迭代,并跳到下一次迭代。当 `numbers[i]` 是奇数时,`print(numbers[i])` 语句不会执行,只有 `numbers[i]` 是偶数时,`print(numbers[i])` 才会执行。

为了更好地理解 `continue` 的作用,我们可以将上面的代码稍微修改一下,让它更容易理解:

python

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

i = 0

while i < len(numbers):

if numbers[i] % 2 == 1: 判断是否为奇数

print("Skipping odd number:", numbers[i])

i += 1

continue

print("Printing even number:", numbers[i])

i += 1

在这段代码中,当 `numbers[i]` 是奇数时,程序会先打印出 "Skipping odd number:" 和当前的奇数,然后执行 `i += 1`,接着遇到 `continue` 语句,程序会立即结束当前迭代,并跳到下一次迭代。当 `numbers[i]` 是偶数时,程序会打印出 "Printing even number:" 和当前的偶数,然后执行 `i += 1`,接着正常结束当前迭代,进入下一次迭代。

通过上面的例子,我们可以看到 `continue` 语句在 `while` 循环中的作用:当满足某个条件时,它会立即结束当前迭代,并跳到下一次迭代。这可以让我们在循环中跳过某些步骤,只执行我们关心的部分。

值得注意的是,`continue` 语句在 `for` 循环中也非常有用。例如,如果我们有一个列表,我们只想打印出其中的偶数,但跳过所有的奇数,我们可以使用 `for` 循环和 `continue` 语句来实现:

python

numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

for i in numbers:

if i % 2 == 1: 判断是否为奇数

continue

print(i)

在这段代码中,当 `i` 是奇数时,`continue` 语句会立即结束当前迭代,并跳到下一次迭代。只有 `i` 是偶数时,`print(i)` 才会执行。

`continue` 语句在 `while` 和 `for` 循环中都非常有用,它允许我们控制循环的执行流程,跳过某些步骤,只执行我们关心的部分。