昨天已經有寫了最簡單和貼近大家之前語言習慣的if else寫法了,但這裏來介紹另一個python比較特別的寫法,有點類似其它語言的三元運算式(就是用condition ? true cluase : false clause),但在寫法上比較貼近人類語言的撰寫方式,來簡單看個example吧。
# 寫法一
# true_clause if condition else false_clause
is_friday = True
print('thank god it\'s friday') if is_friday else print('another regular days')
# 寫法二
# (false_result, true_result)[condition]
is_girl = True
sex = ('boy', 'girl')[is_girl]
print('I\'m a ', sex)
其實用昨天的寫法基本的if else也是能實作出我們要的功能,對於大部分的人來說,也比較簡單易讀,不過使用這種寫法,是的確比較精簡,不過,不建議寫太多層對讀的人來說是有點痛苦的,我個人比較偏愛一行程式碼只思考一件事或得到一個結果這樣。
另外,這邊也剛好講到我之前沒有講到的另一個基本型態,boolean type,在Python就是使用True和False來表式,False的值為0,True的值為1, 剛好組成了寫法二中的陣列回傳結果順序。
參考資料:
三元运算符