Python - 根据标量值测试数组中的所有值

时间:2015-04-27 18:04:02

标签: arrays testing numpy

我试图将numpy数组中的值与标量值进行比较。 这是这个数组的一个例子。如果它有任何帮助,它只能包含正值。

y = np.array([ 1 , 0.008 , 3 , 4 , 5])

在我的代码的另一部分中,我想将此数组与标量进行比较,比如说'如果'用于打破while循环的语句。 我想测试数组中的任何值是否大于此标量值。

while True:

    if any_value_in_array(y) > 3.5
       break

    #random code

任何可以让我做这样的事情的命令?

1 个答案:

答案 0 :(得分:1)

您可以在条件检查中使用any()

In [377]: (y > 3.5).any()
Out[377]: True

更长的例子

In [378]: y
Out[378]: array([ 1.   ,  0.008,  3.   ,  4.   ,  5.   ])

In [379]: (y > 3.5)
Out[379]: array([False, False, False,  True,  True], dtype=bool)

In [380]: (y > 3.5).any()
Out[380]: True

此外,如果要检查所有元素是否与条件匹配,可以使用all()