numpy.bitwise_or
numpy.bitwise_or(x1, x2, /, out=None, *, where=True, casting='same_kind', order='K', dtype=None, subok=True[, signature, extobj]) = <ufunc 'bitwise_or'>
按元素计算两个数组的按位或。
计算输入数组中整数的基础二进制表示形式的按位或。 该ufunc实现了C/Python运算符|
。
参数 : | x1, x2 :array_like 仅处理整数和布尔类型。 如果 则必须将它们传递为通用形状 (即输出的形状)。 out :ndarray, 或 ndarray的 结果存储的位置。 如果提供, 它必须具有输入传递到的形状。 如果未提供或没有, 则返回一个新分配的数组。 元组(只能作为关键字参数) 的长度必须等于输出的数量。 where :array_like, 可选 此条件通过输入传递。 在条件为 将 在其他地方, 请注意,如果通过默认的 创建了未初始化的输出数组, 则条件为False的数组中的位置 将保持未初始化状态。 **kwargs 有关其他仅关键字的参数, 请参见 |
返回值 : | out :ndarray 或 scalar 结果。 如果 |
例子
1)基本用法(整数)
import numpy as np a = np.array([0, 1, 2, 3]) b = np.array([4, 5, 6, 7]) result = np.bitwise_or(a, b) print(result)
2)与标量进行按位或
import numpy as np a = np.array([1, 2, 4]) result = np.bitwise_or(a, 1) print(result)
3)布尔类型(逻辑或)
import numpy as np a = np.array([True, False, True]) b = np.array([False, False, True]) result = np.bitwise_or(a, b) print(result)
4)使用 where 参数
import numpy as np a = np.array([1, 2, 3]) b = np.array([4, 5, 6]) where_mask = np.array([True, False, True]) result = np.bitwise_or(a, b, where=where_mask) print(result)