numpy.bitwise_xor#

numpy.bitwise_xor(x1, x2, /, out=None, *, where=True, casting='same_kind', order='K', dtype=None, subok=True[, сигнатура]) = 'bitwise_xor'>#

Вычислить побитовое исключающее ИЛИ двух массивов поэлементно.

Вычисляет побитовое исключающее ИЛИ двоичного представления целых чисел во входных массивах. Этот ufunc реализует оператор C/Python ^.

Параметры:
x1, x2array_like

Обрабатываются только целочисленные и булевы типы. Если x1.shape != x2.shape, они должны быть транслируемы к общей форме (которая становится формой вывода).

выходndarray, None или кортеж из ndarray и None, опционально

Место для сохранения результата. Если предоставлено, оно должно иметь форму, в которую транслируются входные данные. Если не предоставлено или None, возвращается вновь выделенный массив. Кортеж (возможен только как ключевой аргумент) должен иметь длину, равную количеству выходов.

гдеarray_like, необязательный

Это условие транслируется на вход. В местах, где условие истинно, выход массив будет установлен в результат ufunc. В других местах выход массив сохранит своё исходное значение. Обратите внимание, что если неинициализированный выход массив создается через стандартный out=None, позиции внутри неё, где условие ложно, останутся неинициализированными.

**kwargs

Для других аргументов, доступных только по ключевым словам, смотрите документация ufunc.

Возвращает:
выходndarray или скаляр

Результат. Это скаляр, если оба x1 и x2 являются скалярами.

Смотрите также

logical_xor
bitwise_and
bitwise_or
binary_repr

Возвращает двоичное представление входного числа в виде строки.

Примеры

>>> import numpy as np

Число 13 представлено как 00001101. Аналогично, 17 представляется как 00010001. Побитовое исключающее ИЛИ 13 и 17, следовательно, 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])

The ^ оператор может использоваться как сокращение для np.bitwise_xor на ndarrays.

>>> x1 = np.array([True, True])
>>> x2 = np.array([False, True])
>>> x1 ^ x2
array([ True, False])