form:https://zhidao.baidu.com/question/1958192745292032580.html
return 会直接另函数返回,函数就运行结束了,所有该函数体内的代码都不再执行了,所以该函数体内的循环也不可能再继续运行。
如果你需要让循环继续执行,就不能return函数,而应该选用break或者continue。
break:跳出所在的当前整个循环,到外层代码继续执行。
continue:跳出本次循环,从下一个迭代继续运行循环,内层循环执行完毕,外层代码继续运行。
return:直接返回函数,所有该函数体内的代码(包括循环体)都不会再执行。
#coding=gbk
#这是测试使用的代码模块
def return_continue_break(type):
if(not type in ["return", "continue", "break"]):
print('"type" should be "return, continue, break".')
return
for j in range(0, 5):
for i in range(0, 5):
print('j_i:%d, %d'%(j, i))
if(i > 3):
if(type == "return"):
return
elif(type == "continue"):
continue
else:
break
print("executed!")
if __name__ == '__main__':
return_continue_break("break")
return_continue_break("continue")
return_continue_break("return")
备注:上述代码在双层循环间运行: if i == 3 : 语句,在执行continue 和 break 时, 两者的区别比较明显。
运行:return_continue_break("break")
j_i:0, 0
executed!
j_i:0, 1
executed!
j_i:0, 2
executed!
j_i:0, 3
executed!
j_i:0, 4
j_i:1, 0
executed!
j_i:1, 1
executed!
j_i:1, 2
executed!
j_i:1, 3
executed!
j_i:1, 4
j_i:2, 0
executed!
j_i:2, 1
executed!
j_i:2, 2
executed!
j_i:2, 3
executed!
j_i:2, 4
j_i:3, 0
executed!
j_i:3, 1
executed!
j_i:3, 2
executed!
j_i:3, 3
executed!
j_i:3, 4
j_i:4, 0
executed!
j_i:4, 1
executed!
j_i:4, 2
executed!
j_i:4, 3
executed!
j_i:4, 4
运行:return_continue_break("continue")
j_i:0, 0
executed!
j_i:0, 1
executed!
j_i:0, 2
executed!
j_i:0, 3
executed!
j_i:0, 4
j_i:1, 0
executed!
j_i:1, 1
executed!
j_i:1, 2
executed!
j_i:1, 3
executed!
j_i:1, 4
j_i:2, 0
executed!
j_i:2, 1
executed!
j_i:2, 2
executed!
j_i:2, 3
executed!
j_i:2, 4
j_i:3, 0
executed!
j_i:3, 1
executed!
j_i:3, 2
executed!
j_i:3, 3
executed!
j_i:3, 4
j_i:4, 0
executed!
j_i:4, 1
executed!
j_i:4, 2
executed!
j_i:4, 3
executed!
j_i:4, 4
运行:return_continue_break("return")
j_i:0, 0
executed!
j_i:0, 1
executed!
j_i:0, 2
executed!
j_i:0, 3
executed!
j_i:0, 4
项目推荐:
Java微服务实战296集大型视频-谷粒商城【附代码和课件】