You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

遍历两个Numpy数组时如何获取共同匹配的元素值

实现方法

方法1:修改现有遍历逻辑

你原有代码只需要把print(True)换成打印匹配到的元素即可,示例代码:

for elem in an_array:
    if elem in another_array:
        print(elem)

这种写法逻辑简单,适合小规模数组使用。

方法2:使用Numpy内置函数(更推荐)

Numpy提供了原生的交集计算函数np.intersect1d,效率远高于手动遍历,尤其适合数据量较大的场景。注意你的another_array中同时存在字符串和整数类型,建议先统一转为字符串类型避免类型不匹配导致匹配失败,示例代码:

import numpy as np

# 原数组定义
an_array=np.array(['1601-3003-2105','3200-0000-0001','3200-0000-0002','93043','K036095','K036096'])
another_array=np.array(['3200-0000-0001','701450491A4CU',16])

# 统一转换为字符串类型
an_array_str = an_array.astype(str)
another_array_str = another_array.astype(str)

# 计算两个数组的交集
common_elements = np.intersect1d(an_array_str, another_array_str)
print(common_elements)

运行后输出结果为:

['3200-0000-0001']

如果你的数组本身无重复元素,可添加assume_unique=True参数进一步提升运行效率:
common_elements = np.intersect1d(an_array_str, another_array_str, assume_unique=True)

内容的提问来源于stack exchange,提问作者superunknown

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.06 22:36:04