Python中的按位與運(yùn)算是指將兩個(gè)二進(jìn)制數(shù)的對(duì)應(yīng)位都取1時(shí)為1,其他情況為0的操作。可以用“&”符號(hào)表示。
a = 5 # 二進(jìn)制為 101 b = 3 # 二進(jìn)制為 011 c = a & b print(c) # 輸出結(jié)果為 1,因?yàn)槎M(jìn)制為 001
在這個(gè)例子中,我們先將a和b轉(zhuǎn)換成二進(jìn)制數(shù),然后進(jìn)行按位與運(yùn)算,再將運(yùn)算結(jié)果轉(zhuǎn)換成十進(jìn)制數(shù)輸出。
按位與運(yùn)算不僅可以用于最簡(jiǎn)單的二進(jìn)制數(shù)操作,還可以用于位掩碼、權(quán)限控制、數(shù)據(jù)加密等復(fù)雜的應(yīng)用場(chǎng)景。
值得注意的是,按位與運(yùn)算是一種位運(yùn)算,在Python中它的優(yōu)先級(jí)較低,需要在高優(yōu)先級(jí)操作符前加上括號(hào)。
a = 5 b = 3 # 下面這行代碼會(huì)輸出錯(cuò)誤結(jié)果 c = a & b + 1 print(c) # 輸出結(jié)果為 4 # 正確的寫(xiě)法 c = (a & b) + 1 print(c) # 輸出結(jié)果為 2