在 Numpy 中使用比较运算符对两个字符串数组进行逐元素比较

numpyserver side programmingprogramming更新于 2025/8/14 13:52:17

要使用比较运算符对两个字符串数组进行逐元素比较,请使用 Python Numpy 中的 numpy.compare_chararrays() 方法。arr1 和 arr2 是两个形状相同的待比较字符串数组。第三个参数是 rstrip,如果为 True,则在比较之前删除字符串末尾的空格。

NumPy 提供了全面的数学函数、随机数生成器、线性代数例程、傅里叶变换等。它支持广泛的硬件和计算平台,并且能够与分布式、GPU 和稀疏数组库良好兼容。

步骤

首先,导入所需的库 −

import numpy as np

创建两个一维字符串数组 −

arr1 = np.array(['Bella', 'Tom', 'John', 'Kate', 'Amy', 'Brad', 'aaa'])
arr2 = np.array(['Cio', 'Tom', 'Cena', 'Kate', 'Adams', 'brad', 'aa'])

显示数组 −

print("数组 1...
", arr1) print("
数组 2...
", arr2)

获取数组的类型 −

print("
数组 1 的类型...
", arr1.dtype) print("
数组 2 的类型...
", arr2.dtype)

获取数组的维度 −

print("
数组 1 的维度...
",arr1.ndim) print("
数组 2维度...
",arr2.ndim)

获取数组的形状 −

print("
我们的数组 1 的形状...
",arr1.shape) print("
我们的数组 2 的形状...
",arr2.shape)

要使用比较运算符对两个字符串数组进行元素级比较,请使用 numpy.compare_chararrays() 方法。arr1 和 arr2 是两个形状相同的待比较的输入字符串数组。第三个参数是 rstrip ,如果为 True,则在比较之前删除字符串末尾的空格。 −

print("
结果...
",np.compare_chararrays(arr1, arr2, ">", rstrip = True))

示例

import numpy as np

# 创建两个一维字符串数组
arr1 = np.array(['Bella', 'Tom', 'John', 'Kate', 'Amy', 'Brad', 'aaa'])
arr2 = np.array(['Cio', 'Tom', 'Cena', 'Kate', 'Adams', 'brad', 'aa'])

# 显示数组
print("Array 1...
", arr1) print("
Array 2...
", arr2) # 获取数组的类型 print("
数组 1 的类型...
", arr1.dtype) print("
数组 2 的类型...
", arr2.dtype) # 获取数组的维度 print("
数组 1 的维度...
",arr1.ndim) print("
数组 2 的维度...
",arr2.ndim) # 获取数组的形状 print("
数组 1 的形状...
",arr1.shape) print("
数组 2 的形状...
",arr2.shape) # 要使用比较运算符对两个字符串数组进行元素级比较,请使用Python Numpy 中的 numpy.compare_chararrays() 方法 # arr1 和 arr2 是两个待比较的相同形状的输入字符串数组 # 第三个参数是 rstrip ,如果为 True ,则在比较之前删除字符串末尾的空格。 print("
结果...
",np.compare_chararrays(arr1, arr2, ">", rstrip = True))

输出

数组 1...
['Bella' 'Tom' 'John' 'Kate' 'Amy' 'Brad' 'aaa']

数组 2...
['Cio' 'Tom' 'Cena' 'Kate' 'Adams' 'Brad' 'aaa']

数组 1 的类型...
<U5

数组 2 的类型...
<U5

数组 1 的维度...
1

数组 2 的维度...
1

数组 1 的形状...
(7,)

数组 2 的形状...
(7,)

结果...
[False False True False True False True]

相关文章