python - 与 while 循环一样,如何跳过 for 循环中的一个步骤?

标签 python for-loop

我尝试像 while 循环一样跳过 for 循环中的几个步骤。

在 while 循环中,步骤根据特定条件进行调整,如下面的代码所示。

i = 0 
while i <10:
    if i == 3:
        i = 5
    else:
        print(i)
    i = i + 1
#result 0 1 2 6 7 8 9

但是,我尝试用同样的方法调整for循环的步数,但是失败了。

for i in range(10):
    if i == 3:
        i = 5
    else:
        print(i)
#result 0 1 2 4 5 6 7 8 9

我不能在 for 循环中直接控制步骤“i”吗?

如果有办法,请告诉我,我将不胜感激。

最佳答案

在循环体中更改 i 没有任何效果,因为它会在每次迭代时自动分配“range() 结果中的下一个值”。您可以对要跳过的值使用 continue:

for i in range(10):
    if 3 <= i <= 5:
        continue
    else:
        print(i)

关于python - 与 while 循环一样,如何跳过 for 循环中的一个步骤?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58872300/

相关文章:

python - numpy.memmap 用于字符串数组?

Python:在 OrderedDict 中使用自定义比较器进行排序

javascript - 使用 foreach 和 setTimeout 无限次迭代数组

for-loop - 基于范围的 for 循环而不使用标准库

c - fork() 内的 fork() 内的 while 循环

python - 我如何在 Amazon Route 53 中使用 Python Boto 编辑现有的 A 记录

python - 如何在 Unix 上运行的 python 脚本输出中显示 ANSI 颜色

java - for循环不会循环

在 for 循环中使用 fork() 创建子对象,以使用 dup 使用 2 个管道运行 execlp()

python - 如何使用 Python 检测 Ubuntu/Linux 上仅 USB 和硬盘的插入?