Python for循环仅跳过5却只输出terminates问题调试求助
Python代码问题排查
问题原因
print(i)缩进错误,当前归属于if(i==5)的判断分支内,仅当i等于5时才有可能执行print(i)位于continue语句之后,continue执行时会直接终止当前轮次循环,进入下一轮,其后的代码永远不会被触发
两个问题叠加后,print(i)全程不会运行,所以最终只会输出循环外的terminates。
修复后代码
for i in range(1,10): if(i==5): continue print(i) print("terminates")
逻辑说明
将print(i)调整为和if判断同级的缩进层级后:
- 当i不等于5时,不会进入if分支,直接执行打印操作输出当前i值
- 当i等于5时,触发
continue跳过本次循环,不会执行后续的打印操作,刚好实现仅跳过5输出其余数值的需求
内容的提问来源于stack exchange,提问作者Ennada pithalatam idhu
相关产品推荐
相关产品推荐

