np.asarray()初始化numpy数组时如果不指定数值类型则会默认按照int/float类型
e.g.
arr = np.asarray([1,2])
arr[0]+=0.1
此时因为固定了arr的元素类型为int型,加上去的0.1因为不足1会被舍弃掉。
如果想用float型避免精度流失,应该在声明时
arr = np.asarray([1.0,2.0])
arr[0]+=0.1
即可。或者指定dtype=float32
np.asarray()初始化numpy数组时如果不指定数值类型则会默认按照int/float类型
e.g.
arr = np.asarray([1,2])
arr[0]+=0.1
此时因为固定了arr的元素类型为int型,加上去的0.1因为不足1会被舍弃掉。
如果想用float型避免精度流失,应该在声明时
arr = np.asarray([1.0,2.0])
arr[0]+=0.1
即可。或者指定dtype=float32