
- NumPy 教程
- NumPy - 首頁
- NumPy - 簡介
- NumPy - 環境配置
- NumPy 陣列
- NumPy - Ndarray 物件
- NumPy - 資料型別
- NumPy 建立和運算元組
- NumPy - 陣列建立例程
- NumPy - 陣列操作
- NumPy - 從現有資料建立陣列
- NumPy - 從數值範圍建立陣列
- NumPy - 陣列迭代
- NumPy - 陣列重塑
- NumPy - 陣列連線
- NumPy - 陣列堆疊
- NumPy - 陣列分割
- NumPy - 陣列扁平化
- NumPy - 陣列轉置
- NumPy 索引和切片
- NumPy - 索引和切片
- NumPy - 高階索引
- NumPy 陣列屬性和操作
- NumPy - 陣列屬性
- NumPy - 陣列形狀
- NumPy - 陣列大小
- NumPy - 陣列步幅
- NumPy - 陣列元素大小
- NumPy - 廣播
- NumPy - 算術運算
- NumPy - 陣列加法
- NumPy - 陣列減法
- NumPy - 陣列乘法
- NumPy - 陣列除法
- NumPy 高階陣列運算
- NumPy - 交換陣列軸
- NumPy - 位元組交換
- NumPy - 複製和檢視
- NumPy - 元素級的陣列比較
- NumPy - 陣列過濾
- NumPy - 陣列連線
- NumPy - 排序、搜尋和計數函式
- NumPy - 陣列搜尋
- NumPy - 陣列的並集
- NumPy - 查詢唯一行
- NumPy - 建立日期時間陣列
- NumPy - 二元運算子
- NumPy - 字串函式
- NumPy - 數學函式
- NumPy - 統計函式
- NumPy - 矩陣庫
- NumPy - 線性代數
- NumPy - Matplotlib
- NumPy - 使用 Matplotlib 繪製直方圖
- NumPy - NumPy 的 I/O 操作
- NumPy 排序和高階操作
- NumPy - 陣列排序
- NumPy - 沿軸排序
- NumPy - 使用花式索引排序
- NumPy - 結構化陣列
- NumPy - 建立結構化陣列
- NumPy - 操作結構化陣列
- NumPy - 欄位訪問
- NumPy - 記錄陣列
- NumPy - 陣列載入
- NumPy - 陣列儲存
- NumPy - 向陣列追加值
- NumPy - 交換陣列列
- NumPy - 向陣列插入軸
- NumPy 處理缺失資料
- NumPy - 處理缺失資料
- NumPy - 識別缺失值
- NumPy - 刪除缺失資料
- NumPy - 缺失資料插補
- NumPy 效能最佳化
- NumPy - 使用陣列進行效能最佳化
- NumPy - 使用陣列進行向量化
- NumPy - 陣列的記憶體佈局
- NumPy 線性代數
- NumPy - 線性代數
- NumPy - 矩陣庫
- NumPy - 矩陣加法
- NumPy - 矩陣減法
- NumPy - 矩陣乘法
- NumPy - 元素級的矩陣運算
- NumPy - 點積
- NumPy - 矩陣求逆
- NumPy - 行列式計算
- NumPy - 特徵值
- NumPy - 特徵向量
- NumPy - 奇異值分解
- NumPy - 求解線性方程組
- NumPy - 矩陣範數
- NumPy 元素級的矩陣運算
- NumPy - 求和
- NumPy - 求平均值
- NumPy - 求中位數
- NumPy - 求最小值
- NumPy - 求最大值
- NumPy 集合運算
- NumPy - 唯一元素
- NumPy - 交集
- NumPy - 並集
- NumPy - 差集
- NumPy 有用資源
- NumPy 編譯器
- NumPy - 快速指南
- NumPy - 有用資源
- NumPy - 討論
NumPy 按位取反() 函式
NumPy 的bitwise_invert()函式用於執行按位非運算,該運算會反轉輸入陣列中每個元素的所有位。
此函式會翻轉整數二進位制表示中的每一位,從而得到按位補碼。
對於無符號整數,它實際上計算的是位寬的最大值減去當前值,而對於有符號整數,它使用二進位制補碼錶示。
此函式處理各種整數型別的輸入,並返回一個具有相同形狀和型別的陣列,其中包含反轉的位。它等效於bitwise_not()。
語法
以下是 NumPy bitwise_invert() 函式的語法:
numpy.bitwise_invert(x)
引數
NumPy bitwise_invert() 函式接受一個引數,即x,它接受要執行按位反轉的輸入陣列或值。輸入應為整數型別陣列,例如 int8、int16、int32、int64、uint8、uint16、uint32、uint64 等;
返回值
此函式返回一個數組,其中對輸入陣列的每個元素應用了按位反轉。輸出陣列與輸入陣列具有相同的形狀和型別。
示例 1
以下是 NumPy bitwise_invert() 函式的基本示例,它清晰地展示了按位反轉如何在簡單的整數陣列上操作:
import numpy as np # Create a basic integer array x = np.array([0, 1, 2, 3], dtype=np.uint8) # Apply bitwise NOT operation result = np.bitwise_invert(x) print(result)
以下是將bitwise_invert() 函式應用於陣列後的輸出:
[255 254 253 252]
示例 2
在使用 NumPy 中不同資料型別的整數陣列時,按位運算(包括反轉)的行為可能會因使用的整數型別而異。這是一個例子:
import numpy as np # Define arrays with different data types array_uint8 = np.array([0, 1, 2, 255], dtype=np.uint8) array_uint16 = np.array([0, 1, 2, 65535], dtype=np.uint16) array_int8 = np.array([0, 1, -1, -2], dtype=np.int8) array_int16 = np.array([0, 1, -1, -2], dtype=np.int16) # Perform bitwise inversion result_uint8 = np.bitwise_invert(array_uint8) result_uint16 = np.bitwise_invert(array_uint16) result_int8 = np.bitwise_invert(array_int8) result_int16 = np.bitwise_invert(array_int16) print('Original uint8 array:', array_uint8) print('Inverted uint8 array:', result_uint8) print('\nOriginal uint16 array:', array_uint16) print('Inverted uint16 array:', result_uint16) print('\nOriginal int8 array:', array_int8) print('Inverted int8 array:', result_int8) print('\nOriginal int16 array:', array_int16) print('Inverted int16 array:', result_int16)
以下是上述示例的輸出:
Original uint8 array: [ 0 1 2 255] Inverted uint8 array: [255 254 253 0] Original uint16 array: [ 0 1 2 65535] Inverted uint16 array: [65535 65534 65533 0] Original int8 array: [ 0 1 -1 -2] Inverted int8 array: [-1 -2 0 1] Original int16 array: [ 0 1 -1 -2] Inverted int16 array: [-1 -2 0 1]
注意:在某些版本中,bitwise_invert() 函式不起作用,在這種情況下,可以使用bitwise_not() 函式執行相同的操作。
numpy_binary_operators.htm
廣告