在其他语言中,除了条件语句,是不会见到else分支的,但在Python中,while和for循环中,也是可以使用else语句的。它们的工作顺序为:在循环中使用时,else语句只在循环完成后执行,也就是说,break语句也会跳过else代码块,只要循环是正常结束,而不是通过break,else语句就会执行。
while-else举例:
Python代码
#!/usr/bin/env python
# 寻找最大约数
def showMaxFactor(num):
count=num/2
while count>1:
if num%count == 0:
print largest factor of %d is %d % (num,count)
break
count -=1
else:
print num,is prime
for i in range(10,21):
showMaxFactor(i)
程序的执行结果为:
largest factor of 10 is 5
11 is prime
largest factor of 12 is 6
13 is prime
largest factor of 14 is 7
largest factor of 15 is 5
largest factor of 16 is 8
17 is prime
largest factor of 18 is 9
19 is prime
largest factor of 20 is 10
while-else举例:
Python代码
#!/usr/bin/env python
# 寻找最大约数
def showMaxFactor(num):
count=num/2
while count>1:
if num%count == 0:
print largest factor of %d is %d % (num,count)
break
count -=1
else:
print num,is prime
for i in range(10,21):
showMaxFactor(i)
程序的执行结果为:
largest factor of 10 is 5
11 is prime
largest factor of 12 is 6
13 is prime
largest factor of 14 is 7
largest factor of 15 is 5
largest factor of 16 is 8
17 is prime
largest factor of 18 is 9
19 is prime
largest factor of 20 is 10