Python np.float32类型转str为什么数据会变
问题描述:
比如a=np.float32(495853088.0)
b=f'{a}'
结果a=495853100.0
b='495853088.0'
问题1:b为什么不是'495853100.0'
问题2: 请问这里的x可以填多少 495853088.0=np.float32(x)
小白提问 谢谢各位大佬 好人一生平安
答
改为float64就正常了
import numpy as np
a=np.float64(495853088.0)
print(a)
b=f'{a}'
print(b)
答
float类型精度只有7位,超过7位就会四舍五入了
你想保留9位有效数字,那你需要的是double或者decimal