我有一个整数数组,想找到该数组等于多个值列表中的任何值的位置。
这可以通过单独处理每个值或在循环中使用多个“或”语句来轻松完成,但我觉得必须有更好/更快的方法来做到这一点。我实际上正在处理 size 的数组4000 x 2000
,但这是问题的简化版本:
fake = arange(9).reshape((3,3))
array([[0, 1, 2],
[3, 4, 5],
[6, 7, 8]])
want = (fake==0) + (fake==2) + (fake==6) + (fake==8)
print want
array([[ True, False, True],
[False, False, False],
[ True, False, True]], dtype=bool)
我想要的是一种从涉及和值列表的want
单个命令中获取的方法。fake
[0, 2, 6, 8]
我假设有一个包已经包含了这个,这比我在 Python 中编写一个带有循环的函数要快得多。