在写Python语言中,想要实现类似于C/C++的for循环中添加i--的功能,以达到对于当前 i 重新计算的效果。
在C/C++中,可以这样写,表示当条件满足YYYY时,重新计算一遍XXXX
for(int i=0;i<n;i++){
XXXX;
if(YYYY)
i--;
}
在Python语言中,一开始我也想这么写,所以写了如下代码
for i in range(n):
XXXX
if YYYY:
i-=1
本以为在Python中这样写也是能够实现当 满足条件YYYY时,重新计算一遍XXXX的功能,然而,是我想太多。i-=1中的 i 和 for i in range(n)中的 i 是不同的对象,每次当 i-1 后,并没有对 for循环中的 i 起到作用。因此,通过while循环的方法进行改进。代码如下
while i < n:
XXXX
if YYYY:
i-=1
i+=1
从而实现了如同C/C++中的功能