python 位運算按照資料在記憶體中的二進位制位(bit)進行操作,python 位運算子只能用來操作整數型別int,它按照整數在記憶體中的二進位制形式進行計算。python 支援的位運算子如表所示。
位運算子
說明使用形式
舉 例&
按位與a & b
4 & 5
|按位或
a | b
4 | 5
^按位異或
a ^ b
4 ^ 5
~按位取反
~a~4
<<
按位左移
a << b
4 << 2,表示整數 4 按位左移 2 位
>>
按位右移
a >> b
4 >> 2,表示整數 4 按位右移 2 位
按位與在演算法中的應用主要有:
判斷整數的奇偶,普遍的方法是取餘操作,n%2==0
偶數,採用位運算可以提高程式的執行效率,n&1==1
奇數n&1==0
偶數
冪運算
相關**題:
leetcode:二進位制中一的個數
異或運算:相同元素異或為0
對於左移 << 、右移 >>:對原始值不做改變,只返回位移操作之後的值;
對於左移 <<= 、右移 >>=:會修改原始值,不返回任何值(或者說,返回 none )。
5分鐘了解位運算
運算子分為6種,它們是 名稱符號 按位與 按位或 按位異或 按位取反 左移運算 右移運算 按位與運算將參與運算的兩數對應的二進位制位相與,當對應的二進位制位均為 1 時,結果位為 1,否則結果位為 0。按位與運算的運算子為 參與運算的數以補碼方式出現。舉個例子,將數字 5 和數字 8 進行按位與運算...
每天五分鐘系列 教你學find
linux下的find命令用來在目錄結構中搜尋檔案,並執行指定的操作。linux下find命令提供了相當多的查詢條件,功能很強大。即使系統中含有網路檔案系統 nfs find命令在該檔案系統中同樣有效。需要注意的是在執行乙個非常消耗資源的find命令時,我們都傾向於把它放在後台執行,因為遍歷乙個大的...
每天學五分鐘 Liunx 有趣的 log
說明 看 systemd log 的時候發現了一段有意思的列印,不太明白為什麼會這樣,貼出來與朋友們分享,歡迎知道的朋友們說明下,非常感謝。問題描述 服務啟動時,會執行 python 指令碼,該指令碼去呼叫編譯好的 c 可執行檔案。在這之間都會有 log 輸出,從時間上看是 c 的 log 先列印,...