numpy.bitwise_or#

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

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

Вычисляет побитовое ИЛИ двоичного представления целых чисел во входных массивах. Эта универсальная функция реализует оператор 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_or
bitwise_and
bitwise_xor
binary_repr

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

Примеры

>>> import numpy as np

Число 13 имеет двоичное представление 00001101. Аналогично, 16 представляется как 00010000. Побитовое ИЛИ 13 и 16 затем 00011101, или 29:

>>> np.bitwise_or(13, 16)
29
>>> np.binary_repr(29)
'11101'
>>> np.bitwise_or(32, 2)
34
>>> np.bitwise_or([33, 4], 1)
array([33,  5])
>>> np.bitwise_or([33, 4], [1, 2])
array([33,  6])
>>> np.bitwise_or(np.array([2, 5, 255]), np.array([4, 4, 4]))
array([  6,   5, 255])
>>> np.array([2, 5, 255]) | np.array([4, 4, 4])
array([  6,   5, 255])
>>> np.bitwise_or(np.array([2, 5, 255, 2147483647], dtype=np.int32),
...               np.array([4, 4, 4, 2147483647], dtype=np.int32))
array([         6,          5,        255, 2147483647], dtype=int32)
>>> np.bitwise_or([True, True], [False, True])
array([ True,  True])

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

>>> x1 = np.array([2, 5, 255])
>>> x2 = np.array([4, 4, 4])
>>> x1 | x2
array([  6,   5, 255])