Python 運算符練習 not and or


#操作符練習,求打印的內容
x = True
y = False
z = False

if not x or y:
    print(1)
elif not x or not y and z:
    print(2)
elif not x or y or not y and x:
    print(3)
else:
    print(4)

'''
已知操作符優先級順序,not > and > or
 a and  b  若a為False 返回a  否則返回b
 a or   b  若a為True 則返回a 否則返回b
 not a     若a為True 返回False 若a為False,則返回True

我們看上面的表達式一個一個來解
    if not x or y
1:not優先級較高,先運算not x  因為x=True 所以 not x =False
2.語句表達式解為: if False or y      y=False    
3.語句表達式解為: if  False or False
4.根據運算符規則, 該語句解為:False
5.所以if not x or y  返回值為False 當前未命中,進入下一個if判斷

-----------------------------------
  if not x  or  not y  and x
1.not優先級較高, x = True  y = False    z = False
2.語句表達式解為: if False or True and False
3.語句中有or和and and優先級較高,先執行and運算
4.語句表達式解為: if False or False
6.語句表達式解為:if False
所以該語句不會執行,進入下個語句判斷

------------------------------------------------
    elif not x or y or not y and x:
1.not優先級較高,先進行not運算  x = True  y = False    z = False
2.語句表達式解為: elif False or False or True and True
3.語句表達式有 or和and  根據優先級 and先預算
4.語句表達式解為:elif False or False or True
5.語句只有or 從左到右進行計算
6.語句表達式解為:elif False  or True
7.語句表達式解為:elif True
8.語句表達式解為:elif True 
9.語句為True 執行該段語句
-------------------------------------------------------

所以,最終函數打印的內容為:3
'''

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM