今天要來介紹 if 判斷式,如果程式撰寫到一定程度時,會需要用到一些邏輯判斷,或是更複雜的表示式,各種條件判斷等等,這時候就需要用到 if ... else。
if:後面通常搭配比較運算子來一起使用
| 運算子 | < |
<= |
> |
>= |
== |
!= |
|---|
| 判斷 | 是否小於 | 是否小於等於 | 是否大於 | 是否大於等於 | 是否等於 | 是否不等於 |
x = 6
y = 9
if y > x:
print('y > x')

else:放在 if 後的,如果 if 內的判斷式不成立,就會跳到 else
x = 6
y = 9
if x > y:
print('x > y')
else:
print('x < y')

elif:相當於 C語言的 else if
x = 6
y = 6
if x > y:
print('x > y')
elif x == y:
print('x = y')
else:
print('x < y')

Short Hand if:如果只有一個指令要執行的話,可以把指令跟 if 打在同一行
x = 100
y = 9
if x > y: print('x 比較大 ')

Short Hand if ... else:如果 if 和 else 都只要行一個指令,可以這樣寫,但我私心覺得這種寫法的可讀性並不好,還是提供給大家
x = 100
y = 9
print('x') if x < y else print('y')

and, or:可以用 and 或 or 把兩個條件判斷做 and 或 or 運算,適用於多條件判斷時使用~
x = 100
y = 9
z = 50
if x > y and y < z:
print('yessssss')

x = 100
y = 9
z = 50
if x > y or z == 2:
print('yessssss')

in:用 in 測試 tuple、list、dict、set、str 內是否包含某元素,回傳的值為 True
if '2' in '246810':
print('cool')
a = (1, 2, 3, 4) #tuple
b = list('abcde') #str 轉成 list 會一個字元一個位置
print('b =', b)
c = set('abcdefg') #str 轉成 set 會一個字元一個位置,並用 { } 來表示
print('c =', c)
dic = {'a':'A', 'b':'B', 'c':'C'}
if '2' in '246810':
print('2 包含在 246810 中')
if 1 in a:
print('1 包含在 tuple a 中')
if 'a' in b:
print('a 包含在 list b 中')
if 'd' in c:
print('d 包含在 set c 中')
if 'b' in dic:
print('b的大寫是', dic['b'])

待續...