邏輯運算是用邏輯運算子進行邏輯「且」、「或」及「非」等三種計算。
Python 用的邏輯運算子為關鍵字 (keyword) and ,表示「且」計算, or ,表示「或」計算, not ,表示「非」計算
關鍵字 | 作用 |
---|---|
and | 且 |
or | 或 |
not | 非 |
「且」計算需要兩個運算元 (operand) ,必須前後兩個運算元都為 True ,結果才會是 True
print(True and True)
print(True and False)
print(False and False)
#《程式語言教學誌》的範例程式
# http://kaiching.org/
# 檔名:logic01.py
# 功能:示範邏輯運算
# 作者:張凱慶
於命令列執行以上程式,結果如下
$ python3 logic01.py |
True |
False |
False |
$ |
「或」計算同樣需要兩個運算元,只要前後兩個運算元任一個為 True ,結果就會是 True
print(True or True)
print(True or False)
print(False or False)
#《程式語言教學誌》的範例程式
# http://kaiching.org/
# 檔名:logic02.py
# 功能:示範邏輯運算
# 作者:張凱慶
於命令列執行以上程式,結果如下
$ python3 logic02.py |
True |
True |
False |
$ |
「非」計算只需要一個運算元,這是把 True 變成 False ,或是把 False 變成 True
print(not True)
print(not False)
#《程式語言教學誌》的範例程式
# http://kaiching.org/
# 檔名:logic03.py
# 功能:示範邏輯運算
# 作者:張凱慶
於命令列執行以上程式,結果如下
$ python3 logic03.py |
False |
True |
$ |
最後來看看實際數值運算的例子,這邊用了兩個比較運算,並且把兩個比較運算用 and 連結起來,因此只有當兩個比較運算的結果都為 True ,這個 and 運算才會為 True ,由於 2 大於 1 , 34 也大於 15 ,因此 2 大於 1 且 34 大於 15 會回傳 True
if (2 > 1 and 34 > 15):
print("True")
#《程式語言教學誌》的範例程式
# http://kaiching.org/
# 檔名:logic04.py
# 功能:示範邏輯運算
# 作者:張凱慶
於命令列執行以上程式,結果如下
$ python3 logic04.py |
True |
$ |
相關教學影片