numpy.bitwise_xor#
- numpy.bitwise_xor(x1, x2, /, out=None, *, where=True, casting='same_kind', order='K', dtype=None, subok=True[, signature]) = <ufunc 'bitwise_xor'>#
計算兩個陣列元素wise的位元互斥或 (XOR)。
計算輸入陣列中整數底層二進位表示的位元互斥或 (XOR)。此 ufunc 實作 C/Python 運算子
^
。- 參數:
- x1, x2array_like
僅處理整數和布林類型。如果
x1.shape != x2.shape
,它們必須可廣播到共同形狀(這將成為輸出的形狀)。- outndarray, None, 或 ndarray 和 None 的元組, 可選
結果儲存的位置。如果提供,則它必須具有輸入廣播到的形狀。如果未提供或為 None,則會傳回新分配的陣列。元組(可能僅作為關鍵字引數)的長度必須等於輸出的數量。
- wherearray_like, 可選
此條件會廣播到輸入。在條件為 True 的位置,out 陣列將設定為 ufunc 結果。在其他位置,out 陣列將保留其原始值。請注意,如果透過預設
out=None
建立未初始化的 out 陣列,則其中條件為 False 的位置將保持未初始化。- **kwargs
對於其他僅限關鍵字引數,請參閱 ufunc 文件。
- 傳回:
- outndarray 或 純量
結果。如果 x1 和 x2 都是純量,則這是一個純量。
參見
logical_xor
bitwise_and
bitwise_or
binary_repr
以字串形式傳回輸入數字的二進位表示。
範例
>>> import numpy as np
數字 13 以
00001101
表示。同樣地,17 以00010001
表示。因此,13 和 17 的位元互斥或 (XOR) 為00011100
,即 28>>> np.bitwise_xor(13, 17) 28 >>> np.binary_repr(28) '11100'
>>> np.bitwise_xor(31, 5) 26 >>> np.bitwise_xor([31,3], 5) array([26, 6])
>>> np.bitwise_xor([31,3], [5,6]) array([26, 5]) >>> np.bitwise_xor([True, True], [False, True]) array([ True, False])
運算子
^
可以用作 ndarray 上np.bitwise_xor
的簡寫。>>> x1 = np.array([True, True]) >>> x2 = np.array([False, True]) >>> x1 ^ x2 array([ True, False])