Python中的else語句整理
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。
【編輯推薦】