你所不知道的python 循环中的else

众多语言中都有if else这对条件选择组合,但是在python中还有更多else使用的地方,比如说循环for,或者while都可以和else组合。

下面简单介绍一下for-else while-else组合

循环组合中的else执行的情况下是循环正常结束(即不是使用break退出)。如下列代码:

numbers = [1,2,3,4,5] 
for n in numbers: 
    if (n > 5): 
        print('the value is %d '%(n)) 
        break
else: 
    print('the for loop does not end with break') 
    
i = 0
while(numbers[i] < 5): 
    print('the index %d value is %d'%(i, numbers[i])) 
    if (numbers[i] < 0) : 
        break
    i = i + 1
else: 
    print('the loop does not end with break') 
  
numbers = [1,2,3,4,5]
for n in numbers:
    if (n > 5):
        print('the value is %d '%(n))
        break
else:
    print('the for loop does not end with break')
   
i = 0
while(numbers[i] < 5):
    print('the index %d value is %d'%(i, numbers[i]))
    if (numbers[i] < 0) :
        break
    i = i + 1
else:
    print('the loop does not end with break')

执行结果如下:

C:\Python27>python.exe for_else.py 
the for loop does not end with break
the index 0 value is 1
the index 1 value is 2
the index 2 value is 3
the index 3 value is 4
the loop does not end with break

点赞