Python條件語句是通過一條或多條語句的執(zhí)行結(jié)果(True或者False)來決定執(zhí)行的代碼塊。

可以通過下圖來簡單了解條件語句的執(zhí)行過程:

1021.jpg

Python程序語言指定任何非0和非空(null)值為true,0 或者 null為false。

Python 編程中 if 語句用于控制程序的執(zhí)行,基本形式為:

if 判斷條件:
    執(zhí)行語句……
else:
    執(zhí)行語句……

其中"判斷條件"成立時(非零),則執(zhí)行后面的語句,而執(zhí)行內(nèi)容可以多行,以縮進來區(qū)分表示同一范圍。

else 為可選語句,當需要在條件不成立時執(zhí)行內(nèi)容則可以執(zhí)行相關(guān)語句,具體例子如下:

#!/usr/bin/python
# -*- coding: UTF-8 -*-

# 例1:if 基本用法

flag = False
name = 'luren'
if name == 'python':         # 判斷變量否為'python'
    flag = True          # 條件成立時設置標志為真
    print 'welcome boss'    # 并輸出歡迎信息
else:
    print name              # 條件不成立時輸出變量名稱

輸出結(jié)果為:

>>> luren # 輸出結(jié)果

if 語句的判斷條件可以用>(大于)、<(小于)、==(等于)、>=(大于等于)、<=(小于等于)來表示其關(guān)系。

當判斷條件為多個值時,可以使用以下形式:

if 判斷條件1:
    執(zhí)行語句1……
elif 判斷條件2:
    執(zhí)行語句2……
elif 判斷條件3:
    執(zhí)行語句3……
else:
    執(zhí)行語句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'     # 條件均不成立時輸出

輸出結(jié)果為:

>>> roadman # 輸出結(jié)果

由于 python 并不支持 switch 語句,所以多個條件判斷,只能用 elif 來實現(xiàn),如果判斷需要多個條件需同時判斷時,可以使用 or (或),表示兩個條件有一個成立時判斷條件成功;使用 and (與)時,表示只有兩個條件同時成立的情況下,判斷條件才成功。

#!/usr/bin/python
# -*- coding: UTF-8 -*-

# 例3:if語句多個條件

num = 9
if num >= 0 and num <= 10:    # 判斷值是否在0~10之間
    print 'hello'
>>> hello # 輸出結(jié)果

num = 10
if num < 0 or num > 10:    # 判斷值是否在小于0或大于10
    print 'hello'
else:
print 'undefine'
>>> undefine # 輸出結(jié)果

num = 8
# 判斷值是否在0~5或者10~15之間
if (num >= 0 and num <= 5) or (num >= 10 and num <= 15):    
    print 'hello'
else:
    print 'undefine'
>>> undefine # 輸出結(jié)果

當if有多個條件時可使用括號來區(qū)分判斷的先后順序,括號中的判斷優(yōu)先執(zhí)行,此外 and 和 or 的優(yōu)先級低于>(大于)、<(小于)等判斷符號,即大于和小于在沒有括號的情況下會比與或要優(yōu)先判斷。

簡單的語句組

你也可以在同一行的位置上使用if條件判斷語句,如下實例:

#!/usr/bin/python 
# -*- coding: UTF-8 -*-
 
var = 100 
 
if ( var  == 100 ) : print "變量 var 的值為100" 
 
print "Good bye!"

以上代碼執(zhí)行輸出結(jié)果如下:

變量 var 的值為100
Good bye!