條件語句

Python 條件語句跟其他語言基本上一致的,都是透過一條或多條語句的執行結果( True 或 False )來決定執行的程式碼區塊。

Python 程式語言指定任何非 0 和非空(null)值為 True,0 或 null為 False。

執行的流程圖如下:

c580c12fe76cd4b072e63fe86f9ddf8.png

#1、if 語句的基本形式

Python 中,if 語句的基本形式如下:

if 判断条件:
    执行语句……
else:
    执行语句……

前面也提到過,Python 語言有著嚴格的縮排要求,因此這裡也需要注意縮進,也不要少寫了冒號: 。

if 語句的判斷條件可以用>(大於)、<(小於)、==(等於)、>=(大於等於)、<=(小於等於)來表示其關係。

例如:

# -*-coding:utf-8-*-
results=59
if results>=60:
    print ('及格')
else :
    print ('不及格')

輸出的結果為:

不及格

上面也說道,非零數值、非空字串、非空list 等,判斷為True,否則為False。因此也可以這樣寫:

num = 6
if num :
    print('Hello Python')

2、if 語句多個判斷條件的形式

有些時候,我們的判斷語句不可能只有兩個,有些時候需要多個,例如上面的例子中大於60 的為及格,那我們還要判斷大於90 的為優秀,在80 到90 之間的良好呢?

這時候需要用到if 語句多個判斷條件,

用偽代碼來表示:

if 判断条件1:
    执行语句1……
elif 判断条件2:
    执行语句2……
elif 判断条件3:
    执行语句3……
else:
    执行语句4……

實例:

# -*-coding:utf-8-*-
results = 89
if results > 90:
    print('优秀')
elif results > 80:
    print('良好')
elif results > 60:
    print ('及格')
else :
    print ('不及格')

輸出的結果:

良好

3、if 語句多個條件同時判斷

Python 不像Java 有switch 語句,所以多個條件判斷,只能用elif 來實現,但是有時候需要多個條件需同時判斷時,可以使用or (或),表示兩個條件有一個成立時判斷條件成功;使用and (與)時,表示只有兩個條件同時成立的情況下,判斷條件才成功。

# -*-coding:utf-8-*-
java = 86
python = 68
if java > 80 and  python > 80:
    print('优秀')
else :
    print('不优秀')
if ( java >= 80  and java < 90 )  or ( python >= 80 and python < 90):
    print('良好')

輸出結果:

不优秀
良好

注意:if 有多個條件時可使用括號來區分判斷的先後順序,括號中的判斷優先執行,此外and 和or 的優先權低於>(大於)、<(小於)等判斷符號,即大於和小於在沒有括號的情況下會比與或要優先判斷。

繼續學習