我创建了以下函数:
def c_min(a,b):
result= [x - y for x in a for y in b]
min=np.min(result)
return min
我创建了一个包含两个列表的测试文件:
a=[1,2,3] and b=[4,5,6]
当我运行函数时,我得到了正确的结果。
然而,当我在初始代码中运行该函数时,标题错误中出现了上述内容。需要注意的是,初始代码中的函数应用于两个数组中。其中一个大小为1,是numpy.float64,另一个为3,是numpy.ndarray。为什么它可以应用于列表而不应用于数组?
a
和b
都需要是numpy.ndarray
。如果其中一个是标量,则for ... in ...
构造将失败。
如文章中所述,使用numpy.array
或numpy.ndarray
可以解决问题。