Skip to main content
 首页 » 编程设计

python之如何有效地检查 numpy 数组包含给定范围内的项目

2025年05月04日26jillzhang

我有一个名为 a 的 numpy 数组,我想检查它是否包含一个范围内的项目,该范围由两个值指定。

import numpy as np 
a = np.arange(100) 
 
mintrshold=33 
maxtreshold=66 

我的解决方案:

goodItems = np.zeros_like(a) 
goodItems[(a<maxtreshold) & (a>mintrshold)] = 1 
 
if goodItems.any():  
   print (there s an item within range) 

你能建议我一个更有效的 pythonic 方法吗?

请您参考如下方法:

Numpy 数组不适用于 pythonic a < x < b .但是有一个功能:

np.logical_and(a > mintrshold, a < maxtreshold) 

或

np.logical_and(a > mintrshold, a < maxtreshold).any() 

在您的特定情况下。基本上,您应该结合两个元素方面的操作。寻找logic funcs了解更多详情