我之前已经用C++编程,但是我是Python的新手。我进行了搜索,但找不到合适的答案。在C++中,我可以执行以下操作:
for(int i=0; i<10;i++)
{
i+=5;
std::cout<<i<<std::endl
}
我的值将是5和11。但是在python中,如果我这样做:
for i in range(0,10):
i+=5
print i
i的值确实在该循环迭代中更新,但在下一个迭代中,它将变为1。
虽然我确实了解在python中,但每次迭代后,我都会在range生成的元组/列表中包含下一个值,但是有什么办法可以像在C++中那样使其跳过迭代?我真的不想使用next()函数5次
编辑:我可以将范围函数的第三个参数用于一般用途,但是如果我只想满足某个条件就想跳过一些迭代该怎么办呢?例如
for(int i=0; i<10;i++)
{
if(i%2)i+=1;
std::cout<<i<<std::endl
}
最佳答案
如果要在条件为真时跳过迭代,请使用continue
:
for i in range(10):
if i % 2:
continue
print(i)
关于python - 在python中跳过for循环中的迭代?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/38163769/