Python numpy.bitwise_xor函数方法的使用

numpy.bitwise_xor 是一个用于按位异或操作的函数。它接受两个数组作为输入,并返回它们逐位执行异或操作的结果。异或操作的规 # 对两个数组分别与 5 进行按位异或操作则是:如果两个比特相同,结果为 0;如果两个比特不同,结果为 1。本文主要介绍一下NumPy中bitwise_xor方法的使用。

numpy.bitwise_xor

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

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

计算输入数组中整数的基础二进制表示形式的按位XOR。 此ufunc实现C/Python运算符^

参数 :

x1, x2 :array_like

仅处理整数和布尔类型。 如果x1.shape!= x2.shape

则必须将它们传递为通用形状(即输出的形状)。

out :ndarray, None

或 ndarraytupleNone, 可选

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

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

如果未提供或没有,则返回一个新分配的数组。 

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

必须等于输出的数量。

where :array_like, 可选

此条件通过输入传递。 在条件为True的位置,

out数组设置为ufunc结果。 在其他地方,

out数组将保留其原始值。

 请注意,如果通过默认的out = None

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

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

将保持未初始化状态。

**kwargs

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

请参见ufunc文档。

返回值 :

out :ndarray 或 scalar

结果。 如果x1x2均为标量,则为标量。

例子

1)两个整数之间进行按位异或操作

import numpy as np

# 两个整数之间进行按位异或操作
result = np.bitwise_xor(13, 17)
print(result)  # 输出: 28

# 将结果 28 转换为二进制表示
binary_result = np.binary_repr(result)
print(binary_result)  # 输出: '11100'

2)31 和 5 进行按位异或操作

import numpy as np

# 31 和 5 进行按位异或操作
result = np.bitwise_xor(31, 5)
print(result)  # 输出: 26

3)对两个数组分别与 5 进行按位异或操作

import numpy as np

# 对两个数组分别与 5 进行按位异或操作
result = np.bitwise_xor([31, 3], 5)
print(result)  # 输出: [26,  6]

4)对两个数组进行按位异或操作

import numpy as np


# 对两个数组进行按位异或操作
result = np.bitwise_xor([31, 3], [5, 6])
print(result)  # 输出: [26,  5]

5)对布尔值数组进行按位异或操作

import numpy as np

# 对布尔值数组进行按位异或操作
result = np.bitwise_xor([True, True], [False, True])
print(result)  # 输出: [ True, False]

推荐阅读
cjavapy编程之路首页