# Python整數類型的按位運算有哪些
按位運算(Bitwise Operations)是直接對整數在內存中的二進制位進行操作的技術。Python提供了完整的按位運算符,適用于所有整數類型(包括負數的補碼形式)。這些運算在底層開發、加密算法、網絡協議等領域有廣泛應用。
## 一、Python支持的按位運算符
### 1. 按位與(AND)`&`
```python
a = 0b1100 # 12
b = 0b1010 # 10
print(bin(a & b)) # 輸出: 0b1000 (8)
|print(bin(a | b)) # 輸出: 0b1110 (14)
^print(bin(a ^ b)) # 輸出: 0b0110 (6)
~print(bin(~a), ~a) # 輸出: '-0b1101' -13
~x = -x - 1<<print(bin(a << 2)) # 輸出: 0b110000 (48)
>>print(bin(a >> 2)) # 輸出: 0b11 (3)
負數處理:
print(~-5) # 輸出4,因為~-x = x-1
移位運算邊界:
大整數支持: Python的整數無大小限制,運算時會自動處理
x = 32
print(x << 3) # 等效于 x*8 = 256
print(x >> 2) # 等效于 x//4 = 8
READ = 0b001
WRITE = 0b010
EXEC = 0b100
permission = READ | WRITE
print(permission & READ) # 檢查讀權限
red = 0xFF0000
green = 0x00FF00
blue = 0x0000FF
purple = red | blue
| 特性 | 按位運算符 | 邏輯運算符 |
|---|---|---|
| 操作對象 | 二進制位 | 布爾值 |
| 返回值類型 | 整數 | 布爾值 |
| 短路求值 | 無 | 有 |
掌握這些按位運算技巧,可以讓你在Python中實現更底層的操作和性能優化。建議在實際項目中多嘗試這些運算,特別是在處理二進制數據或需要位級控制時。 “`
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。