有没有一种好方法来检查 numpy 数组元素是否在某个范围内?

Nei*_*l G 6 python numpy

我想写:

assert np.all(0 < a < 2)
Run Code Online (Sandbox Code Playgroud)

wherea是一个numpy数组,但它不起作用。写这个的好方法是什么?

Ash*_*ary 10

你可以使用numpy.logical_and

>>> a = np.repeat(1, 10)
>>> np.logical_and(a > 0, a < 2).all()
True
Run Code Online (Sandbox Code Playgroud)

或使用&.

>>> ((0 < a) & (a < 2)).all()
True
Run Code Online (Sandbox Code Playgroud)