numpy.bitwise_and 函数用于对两个数组的每个对应元素进行按位与操作。按位与操作是基于二进制表示的逐位操作,只在两个对应的二进制位都为1时结果才为1。通过使用 out 参数,结果将被直接存储在指定的数组中,而不是返回新的数组。本文主要介绍一下NumPy中bitwise_and方法的使用。

numpy.bitwise_and

numpy.bitwise_and(x1, x2, /, out=None, *, where=True, casting='same_kind', order='K', dtype=None, subok=True[, signature, extobj]) = <ufunc 'bitwise_and'>

按元素计算两个数组的按位与。

计算输入数组中整数的基础二进制表示的按位与。 该ufunc实现C/Python运算符

参数 :

x1, x2 :array_like

仅处理整数和布尔类型。 

如果x1.shape!= x2.shape

则必须将它们传递为通用形状

(即输出的形状)。

out :ndarray, None

或 ndarray的tuple和 None, 可选

结果存储的位置。 如果提供,

它必须具有输入传递的形状。 

如果未提供或没有,

则返回一个新分配的数组。 

元组(只能作为关键字参数)的长度

必须等于输出的数量。

where :array_like, 可选

此条件通过输入传递。

 在条件为True的位置,

out数组设置为ufunc结果。 

在其他地方,out数组将保留其原始值。 

请注意,

如果通过默认的out = None

创建了未初始化的输出数组,

则条件为False的数组中的位置

将保持未初始化状态。

**kwargs

有关其他仅关键字的参数,

请参见ufunc文档。

返回值 :

out :ndarray 或 scalar

结果。 如果x1和x2均为标量,

则为标量。

例子

1)对两个整数进行按位与操作

import numpy as np

# 对两个整数进行按位与操作
result = np.bitwise_and(13, 17)
print(result)  # 输出: 1

2)对两个整数进行按位与操作

import numpy as np

# 对两个整数进行按位与操作
result = np.bitwise_and(14, 13)
print(result)  # 输出: 12

3)获取一个整数的二进制表示

import numpy as np

# 获取整数的二进制表示
binary_repr = np.binary_repr(12)
print(binary_repr)  # 输出: '1100'

4)对两个数组和一个整数进行按位与操作

import numpy as np

# 对两个数组和一个整数进行按位与操作
result = np.bitwise_and([14, 3], 13)
print(result)  # 输出: [12  1]

5)对两个数组进行按位与操作

import numpy as np

# 对两个数组进行按位与操作
result = np.bitwise_and([11, 7], [4, 25])
print(result)  # 输出: [0 1]

6)对两个 NumPy 数组进行按位与操作

import numpy as np

# 对两个 NumPy 数组进行按位与操作
result = np.bitwise_and(np.array([2, 5, 255]),
np.array([3, 14, 16]))
print(result)  # 输出: [ 2  4 16]

7)对两个布尔数组进行按位与操作

import numpy as np

# 对两个布尔数组进行按位与操作
result = np.bitwise_and([True, True], [False, True])
print(result)  # 输出: [False  True]

推荐文档

相关文档

大家感兴趣的内容

随机列表