这三种语句都是差不多的。都是前面的内容是正常执行完成的就会执行else语句,如果是非正常,比如:
执行失败,或者break跳出,那么都是不会执行else语句的!
1.for … else
如果for循环是正常执行完的话都会执行else
如果for循环是通过break跳出的 那后面的else就不会执行了
while … else 也是一样。
alist=[]
for i in range(100):
if i<2:
continue
for j in range(2,i):
if i%j==0:
break
else:
alist.append(i)
print(alist)
输出结果:
刚看到这个代码我比较迷得就是为什么2,3还能输出,可以这样理解range()函数左闭右开,左边能取到2,右边取不到2,只有一次循环判断就一次然后结束,是正常结束循环,不是从break中跳出,”3“也是同样道理。
2.try ….except….else
3.while….else
count = 0
while count <= 5 :
count += 1
print("Loop",count)
else:
print("循环正常执行完啦")
print("-----out of while loop ------")
Loop 1
Loop 2
Loop 3
Loop 4
Loop 5
Loop 6
循环正常执行完啦
—–out of while loop ——
© 版权声明
文章版权归作者所有,未经允许请勿转载。
THE END