if 判斷式是所有程式碼都需具備的基本語法。Python 的 if 後面接條件,條件不需使用 ()包含。每個條件最後需接 “:”,並使用Tab鍵內縮作為條件成立的執行區塊。
基本型
最簡單的基本型如下
if 條件 : pass
example
price=eval(input('請輸入便當價格 : ')) if price>=100: print('超級貴的') print('天理何在') 結果: 如何輸入100元及以上,"超級貴的" 及 "天理何在" 都會被印出。 如果低於100,則什麼都不會列印。
if..else
這是屬於第二型,區分為二種結果,語法如下
if 條件: pass else: pass
example
price=eval(input('請輸入便當價格')) if price <100: print("還吃的下去") else: print("超級貴的") print("天理何在")
第三型
若有三種以上的可能,if..else則無法應付,需更改成如下
if 條件1: pass else: if 條件2: pass else: if 條件3: pass else: pass
example
price=eval(input('請輸入便當價格')) if price < 50: print("便宜") else: if price < 70: print("普通") else: if price < 100: print("有點小貴") else: print("超級貴的") print("天理何在")
第三型變型
第三型一直往內縮,實在有違人類的思考方式,並增加日後程式碼的維護,所以可以變型成如下
price=eval(input('請輸入便當價格:')) if price < 50: print("便宜") elif price < 70: print("普通") elif price < 100: print("有點小貴") else: print("超級貴的") print("天理何在")
if..elif..else完整語法
整個if 的完整語法,整理如下
if 條件: pass elif 條件: pass elif 條件: pass else: pass
上述 if 僅能有一個,else 只能為 0 個或 1個,elif 則可以有多個。
所得稅
先輸入薪資(salary),並假設如下條件
薪資 所得稅 0 < salary <= 20000 : 6% 20000< salary <= 40000 : 7% 40000< salary <= 60000 : 8% 60000< salary <= 80000 : 9% 80000以上 13%
如下代碼所示,輸入薪資,並依不同的薪資等級扣除所得稅。
因使用 input()輸入的資料型態為str,所以需再使用eval() 將 str 輸為整數。
print("請輸入薪資 : ", end='')
salary=eval(input())
if salary<=20000:
tax=0.06
elif salary<=40000:
tax=0.07
elif salary <=60000:
tax=0.08
elif salary <=80000:
tax=0.09
else:
tax=0.13
print("薪資 : %d, 所得稅 : %.0f, 實領 : %.0f" % (salary, salary*tax, salary*(1-tax)))
and 運算子
and 運算子比對第一條件及第二條件之間的關係, 必需二個皆為true, 結果才會為true
print("請輸入年齡 : ", end='')
age=int(input())
print("請輸入身高 : ", end='')
height=int(input())
if (age<=45 and height >=160):
print("錄取")
else:
print("不錄取")
or 運算子
二個條件中, 只要其他一個為true, 結果就為true
print("請輸入年齡 : ", end='')
age=int(input())
print("請輸入薪水 : ", end='')
salary=int(input())
if (age>=65 or salary<=20000):
print("免費")
else:
print("自費")
This is the type of content I always seek out online; truly informative and helpful.