【发布时间】:2011-10-29 09:11:22
【问题描述】:
我有一个 numpy 一维数组 c 应该填充
a + b。我首先在使用PyOpenCL 的设备上执行a + b。
我想使用numpy切片快速确定python中结果数组c的正确性。
这是我目前拥有的
def python_kernel(a, b, c):
temp = a + b
if temp[:] != c[:]:
print "Error"
else:
print "Success!"
但我得到了错误:
ValueError:具有多个元素的数组的真值不明确。使用 a.any() 或 a.all()
但似乎a.any 或a.all 只会确定值是否不为0。
如果我想测试numpy 数组temp 中的所有缩放器是否等于numpy 数组c 中的每个值,该怎么办?
【问题讨论】:
-
all_values_are_same = all(your_array[0] == your_array):如果每个值都等于第一个值,则返回一个布尔值列表,并断言它们都为真。