
# Python條件語句
Python條件語句是通過一條或多條語句的執行結果(True或者False)來決定執行的代碼塊。
可以通過下圖來簡單了解條件語句的執行過程:
Python程序語言指定任何非0和非空(null)值為true,0 或者 null為false。
Python 編程中 if 語句用于控制程序的執行,基本形式為:
~~~
if 判斷條件:
執行語句……
else:
執行語句……
~~~
其中"判斷條件"成立時(非零),則執行后面的語句,而執行內容可以多行,以縮進來區分表示同一范圍。
else 為可選語句,當需要在條件不成立時執行內容則可以執行相關語句。
Gif 演示:

具體例子如下:
```
#!/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!
~~~