python中邏輯與或(and、or)和按位與或異或(&、|、^)區(qū)別
按位與或(&、|、^):按照二進制進行邏輯運算例如:數(shù)字換成二進制,各自位上的0/1進行邏輯運算,得到的結(jié)果轉(zhuǎn)換為數(shù)字
3 & 2=0111 & 0010=0010=2
二進制邏輯運算規(guī)則:
&:0&0=0; 0&1=0; 1&0=0; 1&1=1。|:0|0=0; 0|1=1; 1|0=1; 1|1=1。^:0^0=0; 0^1=1; 1^0=1; 1^1=0。
代碼運行順序:從上到下,從左到右
一:邏輯與或 (and、or)
1:and :從左到右運行,運行到表達式不正確就輸出False,后面的表達式邏輯短路;若運行到函數(shù)且無返回值,則輸出None,且后面的表達式邏輯短路(不運行了);若表達式全正確,則輸出最后一個正確的結(jié)果。
例1:運行到表達式不正確就輸出False,后面的表達式邏輯短路
def print_1(): print(’已經(jīng)運行這里了’)a = 99 and 3==1 and print_1()print(a)
輸出:

例2:若運行到函數(shù)且無返回值,則輸出None,且后面的表達式邏輯短路
def print_1(): print(’已經(jīng)運行這里了’)a = 99 and 3==3 and print_1() and Falseprint(a)
輸出:

例3:若表達式全正確,則輸出最后一個正確的結(jié)果
def print_1(): print(’已經(jīng)運行這里了’) return 1==1a = 99 and 3==3 and print_1() and 99print(a)
輸出:

2:or:從左到右運行,運行到表達式正確的就輸出這個表達式的結(jié)果,后面的表達式邏輯短路;若運行到函數(shù)且無返回值,則繼續(xù)運行后面的表達式;若表達式全不正確,則輸出False;
例1:運行到表達式正確的就輸出這個表達式的結(jié)果,后面的表達式邏輯短路
def print_1(): print(’已經(jīng)運行這里了’)b = 99==1 or 3==3 or print_1()print(b)
輸出:

例2:若運行到函數(shù)且無返回值,則繼續(xù)運行后面的表達式
def print_1(): print(’已經(jīng)運行這里了’)b = 99==1 or 3==1 or print_1() or 99print(b)
輸出:

例3:若表達式全不正確,則輸出False
def print_1(): print(’已經(jīng)運行這里了’)b = 99==1 or 3==1 or print_1() or Falseprint(b)
輸出:

到此這篇關(guān)于python中邏輯與或(and、or)和按位與或異或(&、|、^)區(qū)別的文章就介紹到這了,更多相關(guān)python中邏輯與或(and、or)和按位與或異或(&、|、^)內(nèi)容請搜索好吧啦網(wǎng)以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持好吧啦網(wǎng)!
相關(guān)文章:
1. idea設(shè)置自動導入依賴的方法步驟2. AspNetCore&MassTransit Courier實現(xiàn)分布式事務(wù)的詳細過程3. 部署vue+Springboot前后端分離項目的步驟實現(xiàn)4. vue組件庫的在線主題編輯器的實現(xiàn)思路5. Python安裝并操作redis實現(xiàn)流程詳解6. 網(wǎng)頁中img圖片使用css實現(xiàn)等比例自動縮放不變形(代碼已測試)7. Python常用擴展插件使用教程解析8. html清除浮動的6種方法示例9. 用python登錄帶弱圖片驗證碼的網(wǎng)站10. ASP.NET MVC通過勾選checkbox更改select的內(nèi)容

網(wǎng)公網(wǎng)安備