453
條件句,一但有了條件選擇,程式就能針對不同的情境作出複雜多變的邏輯判斷與輸出,這也讓程式能有更複雜的應用。
以下是Python 支持數學中常見的邏輯條件:
- 等於:a == b
- 不等於:a != b
- 小於:a < b
- 小於或等於:a <= b
- 大於:a > b
- 大於或等於:a >= b
條件句的介紹
if的基本格式
#判斷A的值的大小,是否大於1000,並打印出A與1000的差
A=2000
#標準正確的用法
if A>1000 : # if 條件 :
print(A) #縮排4個空格,表示出與if的子從關係
print(A-1000)
#錯誤的用法
if A >1000 :
print(A)
#輸出結果
>>> 2000
>>> 1000
>>> IndentationError: expected an indented block (prog.py, line 2)
縮排的意義
因為程式碼是一行一行往下讀的,python裡是用縮排表示一個程式區塊。
在上訴的例子中,我們希望做的事是如果A>1000,再打印出A的值以及A-1000的值。
但不符條件時,需要跳掉這一整個程式塊。
所以再正確的用法哩,我們能輕易地明白if 條件句裡希望做的事,以及整個程式塊的主從關係。
如果用錯誤的用法,不進行縮排,符合跳鍵時,要特別執行哪些區塊以及當不符條件時,要跳過哪些區塊。
縮排是python裡最重要的格式,能讓python的可讀性提高許多。
條件句用法 – if, elif, else
情境設定 : 如果iphone價格小於等於1000就買
情境設定 : 如果iphone價格小於等於1000就買
#iphone 1000元的情況
iphone_price = 1000
if iphone_price <= 1000 :
print("Buy it")
#iphone 2000元的情況
iphone_price = 2000
if iphone_price <= 1000 :
print("Buy it")
#輸出結果
>>> Buy it
>>>
iphone1000元的情況下,價格符合我們給的條件,所以執行 if 裡的程式碼。
iphone2000元的情況下,價格不符合我們給的條件,所以不執行 if 裡的程式碼。
情境設定 : 如果iphone價格小於1000就買,其他情況則抱怨太貴
情境設定 : 如果iphone價格小於1000就買,其他情況則抱怨太貴
iphone_price = 1200
if iphone_price <= 1000 :
print("Buy it")
else :
print("Too expensive")
#輸出結果
>>> too expensive
情境設定 : 如果iphone價格小於1000就買,介於1000~1200就考慮,其他情況則抱怨太貴
此時就需要用到 if … elif … else…
iphone_price = 1200
if iphone_price <= 1000 :
print("Buy it")
elif 1200>=iphone_price > 1000:
print("thinking")
else :
print("Too expensive")
#輸出結果
>>> thinking
if 跟 else 再多重條件判斷下,都只能使用一次,僅有elif可以用多個不同的條件判斷。
複合條件句用法 – and,or
情境設定 : 如果我的錢可以買12台iphone並且購買完後還能有9000元結餘,再購買iphone
此時我有兩個條件,第一個是要能買12台iphone的儲蓄,第二個是購物完後還需有9000元結餘,我們可以用and的語法連接
my_savings = 12600
iphone = 1000
if my_savings>12*iphone and my_savings-iphone>12000 :
print ("Buy it")
情境設定 : 如果iphone跌價到900或者我的儲蓄超過14000我再購買iphone
my_savings = 12600
iphone = 899
if iphone < 900 or my_savings>14000 :
print ("Buy it")
#輸出結果
>>> Buy it
Python 入門學習系列文章
- PYTHON 基本語法
- PYTHON 資料型態(概念介紹篇)
- PYTHON 資料型態(數字篇)
- PYTHON 資料型態(字串篇)
- PYTHON 資料型態(LIST)
- PYTHON 資料型態(DICT)
- PYTHON 資料型態(BOOLEANS)
- PYTHON 條件判斷算式(IF,ELIF,ELSE)
- PYTHON WHILE 迴圈
- PYTHON FOR 迴圈
- PYTHON DEF 函式
- PYTHON MODULES 模組
