Python是一种面向对象、直译式计算机程序设计语言,也是一种功能强大而完善的通用型语言,已经具有十多年的发展历史,成熟且稳定。这种语言具有非常简捷而清晰的语法特点,适合完成各种高层任务,几乎可以在所有的操作系统中运行。目前,基于这种语言的相关技术正在飞速的发展,用户数量急剧扩大,相关的资源非常多。下面为大家总结Python中的else语句。
if-else语句:
和各种语言相同的用法,在条件语句中,与if语句搭配使用的else语句。如果if语句的条件表达式的结果布尔值为假,那么程序将执行else语句后的代码。它的语法是大家最为熟知的:
Python代码
- if expression:
- expr_true_suite
- else:
- expr_false_suite
elif(else-if)语句:
elif是python提供的else-if语句,它检查多个条件表达式的值是否为真,并在为真时执行特定代码块中的代码。和else一样,elif是可选的,但是要注意的是,一个if语句可以跟多个elif语句,但最后只能有一个else语句:
Python代码
- if expression1:
- expr1_true_suite
- elif expression2:
- expr2_true_suite
- elif expressionN:
- exprN_true_suite
- else:
- none_of_the_above_suite
while-else/for-else语句:
在其他语言中,除了条件语句,是不会见到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
try-else语句:
对于python中的错误和异常,try-except语句段,也可以和else连用,其功能和循环中的else语句没有多大区别:在try范围内没有检测到异常的时候,执行else子句。看一下语法:
Python代码
- try:
- log = open('logfile.txt','w')
- except:
- print 'file logfile.txt is not exsit'
- else:
- log.write('no exception caught')
- log.close()
当然,在异常处理中,else一样可以和finally联用:try-except-else-finally。
【编辑推荐】