Python numpy.where中的多个条件

Python numpy.where中的多个条件,python,numpy,Python,Numpy,对于一些numpy数组,我想做的是 indices = np.where((a < 4) or (a > 12)) index=np.其中((a12)) 这是无效的。它只返回“包含多个元素的数组的真值不明确。请使用a.any()或a.all()。但是这个表达式并不含糊,any和all都不做我想做的事。(any和all也不能接受复合表达式。但是if可能会混淆…您想得到一个逻辑/布尔数组作为where 你可以做x | y或np。逻辑的

对于一些numpy数组,我想做的是

indices = np.where((a < 4) or (a > 12))
index=np.其中((a<4)或(a>12))

这是无效的。它只返回“包含多个元素的数组的真值不明确。请使用a.any()或a.all()。但是这个表达式并不含糊,
any
all
都不做我想做的事。(
any
all
也不能接受复合表达式。但是
if
可能会混淆…

您想得到一个逻辑/布尔数组作为
where


你可以做
x | y
np。逻辑的
,其中
x
y
a<4
a>12
索引=np。其中((a<4)|(a>12))
放在一边:这是重复的。抱歉重复;我找不到任何相关的文章。显然,这与
np.where()
无关,而是因为Python既有
又有
|
,它们做的事情不同。哦,蟒蛇,你这个愚蠢的野兽……没问题。通常很难找到重复的。这两个操作符做不同的事情。他们不是同一个操作符…是的,因此我对他们做不同事情的评论。Python是否完成了疯狂,并且同时拥有
&
?编辑:是的,是的。叹息