【发布时间】:2016-11-25 10:03:29
【问题描述】:
我正在解决一个需要编写如下代码的问题:
c = [0,0,1,0,0,1,0]
for i in range(7):
if(i<7-2 and c[i+2] == 0):
i += 1
print(i)
我期望的输出是这样的:
0
2
3
5
6
但我得到了这个:
0
2
3
3
5
5
6
但是在 C 中使用相同的逻辑/代码,它工作正常......
#include<stdio.h>
int main(){
int c[] = {0,0,1,0,0,1,0};
int i;
for(i=0;i<7;i++){
if(i<7-2 && c[i+2] == 0){
i++;
}
printf("%d\n",i);
}
}
什么是原因或我在这里遗漏了什么?
【问题讨论】:
标签: python python-3.x loops