Python 條件語句
Python條件語句是通過一條或多條語句的執行結果(True或者False)來決定執行的代碼塊。
可以通過下圖來簡單瞭解條件語句的執行過程:
Python程序語言指定任何非0和非空(null)值爲true,0 或者 null爲false。
Python 編程中 if 語句用於控制程序的執行,基本形式爲:
if 判斷條件: 執行語句…… else: 執行語句……
其中"判斷條件"成立時(非零),則執行後面的語句,而執行內容可以多行,以縮進來區分表示同一範圍。
else 爲可選語句,當需要在條件不成立時執行內容則可以執行相關語句,具體例子如下:
#!/usr/bin/python # -*- coding: UTF-8 -*- # 例1:if 基本用法 flag = False name = 'luren' if name == 'python': # 判斷變量否爲'python' flag = True # 條件成立時設置標誌爲真 print 'welcome boss' # 並輸出歡迎信息 else: print name # 條件不成立時輸出變量名稱
輸出結果爲:
>>> luren # 輸出結果
if 語句的判斷條件可以用>(大於)、<(小於)、==(等於)、>=(大於等於)、<=(小於等於)來表示其關係。
當判斷條件爲多個值是,可以使用以下形式:
if 判斷條件1: 執行語句1…… elif 判斷條件2: 執行語句2…… elif 判斷條件3: 執行語句3…… else: 執行語句4……
實例如下:
#!/usr/bin/python # -*- coding: UTF-8 -*- # 例2:elif用法 num = 5 if num == 3: # 判斷num的值 print 'boss' elif num == 2: print 'user' elif num == 1: print 'worker' elif num < 0: # 值小於零時輸出 print 'error' else: print 'roadman' # 條件均不成立時輸出
輸出結果爲:
>>> roadman # 輸出結果
由於 python 並不支持 switch 語句,所以多個條件判斷,只能用 elif 來實現,如果判斷需要多個條件需同時判斷時,可以使用 or (或),表示兩個條件有一個成立時判斷條件成功;使用 and (與)時,表示只有兩個條件同時成立的情況下,判斷條件才成功。
#!/usr/bin/python # -*- coding: UTF-8 -*- # 例3:if語句多個條件 num = 9 if num >= 0 and num <= 10: # 判斷值是否在0~10之間 print 'hello' >>> hello # 輸出結果 num = 10 if num < 0 or num > 10: # 判斷值是否在小於0或大於10 print 'hello' else: print 'undefine' >>> undefine # 輸出結果 num = 8 # 判斷值是否在0~5或者10~15之間 if (num >= 0 and num <= 5) or (num >= 10 and num <= 15): print 'hello' else: print 'undefine' >>> undefine # 輸出結果
當if有多個條件時可使用括號來區分判斷的先後順序,括號中的判斷優先執行,此外 and 和 or 的優先級低於>(大於)、<(小於)等判斷符號,即大於和小於在沒有括號的情況下會比與或要優先判斷。
簡單的語句組
你也可以在同一行的位置上使用if條件判斷語句,如下實例:
#!/usr/bin/python # -*- coding: UTF-8 -*- var = 100 if ( var == 100 ) : print "變量 var 的值爲100" print "Good bye!"
以上代碼執行輸出結果如下:
變量 var 的值爲100 Good bye!