iT邦幫忙

2021 iThome 鐵人賽

DAY 9
1
Software Development

宇宙 69 大魔王的 python 世界系列 第 9

【Day 09】if ... else

前言

今天要來介紹 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:如果 ifelse 都只要行一個指令,可以這樣寫,但我私心覺得這種寫法的可讀性並不好,還是提供給大家

    x = 100
    y = 9
    print('x') if x < y else print('y')
    

  • and, or:可以用 andor 把兩個條件判斷做 andor 運算,適用於多條件判斷時使用~

    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 測試 tuplelistdictsetstr 內是否包含某元素,回傳的值為 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'])
    

待續...


上一篇
【Day 08】List 介紹!
下一篇
【Day 10】While 迴圈
系列文
宇宙 69 大魔王的 python 世界30

尚未有邦友留言

立即登入留言