Python中如何在if条件满足时跳出内层循环进入外层下一轮迭代
解决方法
在内层循环的if分支完成你需要的数值更新操作后,直接添加break语句即可。break会终止当前所在的最内层循环,触发后会直接退出j的遍历流程,回到外层循环继续执行下一个i的迭代,完全符合你只保留第一个匹配结果的需求。
修改后的代码示例如下:
for i in range(0, upper_bound-1): # 原有外层循环逻辑 val1 = func1[list1[n]] val2 = func2[list1[n]] for j in range(i+1, upper_bound): if (arr[list1[j], val1] & val2) !=0: t = list1[j] # 原有匹配后的业务逻辑 break # 新增语句,匹配到第一个结果后直接退出内层循环
补充说明:你判断continue无法解决该问题是正确的,continue的作用仅为跳过当前循环的剩余逻辑,直接进入下一轮内层循环的j值判断,不会终止整个内层遍历流程,无法实现提前退出的效果。
内容的提问来源于stack exchange,提问作者splitznook
相关产品推荐
相关产品推荐

