Python 检查numpy数组中给定位置的每个元素是否与不同数组中相同位置的另一个元素匹配

Python 检查numpy数组中给定位置的每个元素是否与不同数组中相同位置的另一个元素匹配,python,numpy,Python,Numpy,给定两个数组 a = ([1,2,3]) b = ([1,3, 2]) 是否有一种优雅的方法来检查a中位置i的任何元素是否与b中的位置i匹配 我知道这很容易循环: for i in range(len(a)): for j in range(len(b)): if a[i] == b[j]: print("There is a match") 但我对更优雅或更快的方法感兴趣 谢谢大家! 如果您喜欢使用numpy,它提供了一种简洁、优雅、高效的方

给定两个数组

a = ([1,2,3])
b = ([1,3, 2])
是否有一种优雅的方法来检查a中位置i的任何元素是否与b中的位置i匹配

我知道这很容易循环:

for i in range(len(a)):
    for j in range(len(b)):
        if a[i] == b[j]:
            print("There is a match")
但我对更优雅或更快的方法感兴趣

谢谢大家!

如果您喜欢使用numpy,它提供了一种简洁、优雅、高效的方法:

import numpy as np

a = np.array([1, 2, 3, 4])
b = np.array([1, 3, 2, 4])
np.where(a==b)
输出是包含索引数组的元组,其中a的元素等于b的元素:

(array([0, 3]),)