我有以下两个功能:defloop(x):a=np.zeros(10)fori1inrange(10):fori2inrange(10):a[i1]+=np.sin(x[i2]-x[i1])returna和defvectorized(x):b=np.zeros(10)fori1inrange(10):b+=np.sin(np.roll(x,i1)-x)returnb但是,当我运行两者时,我发现它们的结果略有不同:x=np.arange(10)a,b=loop(x),vectorized(x)printb-a我得到:[2.22044605e-160.00000000e+000.000000