如何在float32而不是float64上强制python浮点操作?

如何在float32而不是float64上强制python浮点操作?,python,numpy,floating-point,operators,precision,Python,Numpy,Floating Point,Operators,Precision,我想对float32而不是float64类型执行一些数学运算(+、-、*、/)。我需要在number或numpy.array上执行这些操作,还需要一些numpy数学函数,例如sqrt mean。我该怎么做?numpy.float32会有帮助吗 >>>PI=3.1415926535897 >>> print PI*PI 9.86960440109 >>> PI32=numpy.float32(PI) >>> print PI3

我想对
float32
而不是
float64
类型执行一些数学运算(+、-、*、/)。我需要在
number
numpy.array
上执行这些操作,还需要一些numpy数学函数,例如
sqrt mean
。我该怎么做?

numpy.float32会有帮助吗

>>>PI=3.1415926535897
>>> print PI*PI
9.86960440109
>>> PI32=numpy.float32(PI)
>>> print PI32*PI32
9.86961
如果要对float32执行数学运算,将操作数转换为float32可能会有所帮助。

使用:

注意精度:

np.set_printoptions(precision=16)
print("arr_f64 = ", arr_f64)
print("arr_f32 = ", arr_f32)
给予


对我可以帮我。是否有其他方法可以执行此操作是的,当使用数组时,如果它不是float32,则可以调用它的astype方法:
np.set_printoptions(precision=16)
print("arr_f64 = ", arr_f64)
print("arr_f32 = ", arr_f32)
arr_f64 =  [1.0000123456789 2.0000123456789 3.0000123456789]
arr_f32 =  [1.0000124000000 2.0000124000000 3.0000124000000]