Python 检查数组-值是否包含在另一个数组中?

Python 检查数组-值是否包含在另一个数组中?,python,arrays,numpy,Python,Arrays,Numpy,我想为数组a中的每个值返回一个布尔值,指示它是否在数组B中。我想这应该是一个标准程序,但我找不到任何关于如何做的信息。我的尝试如下: A = ['User0','User1','User2','User3','User4','User0','User1','User2','User3' 'User4','User0','User1','User2','User3','User4','User0','User1','User2' 'User3','User4','User0',

我想为数组
a
中的每个值返回一个布尔值,指示它是否在数组
B
中。我想这应该是一个标准程序,但我找不到任何关于如何做的信息。我的尝试如下:

A = ['User0','User1','User2','User3','User4','User0','User1','User2','User3'
     'User4','User0','User1','User2','User3','User4','User0','User1','User2'
     'User3','User4','User0','User1','User2','User3','User4','User0','User1'
     'User2','User3','User4','User0','User1']
B = ['User3', 'User2', 'User4']
contained = (A in B)
但是,我得到了一个错误:

ValueError: shape mismatch: objects cannot be broadcast to a single shape

我正在使用numpy,因此任何使用numpy或标准Python的解决方案都是首选。

要在不使用
numpy
的情况下对其进行测试,请尝试:

contained = [a in B for a in A]
结果:

[False, False, True, True, True, False, False, True, False, False,
 False, True, True, True, False, False, False, True, False, False,
 True, True, True, False, False, True, True, False, False]
你可以用我相信-

np.in1d(A,B)

对于这个小例子,这个列表理解要比
np.inad
快得多。