在PYTHON中保存小于64位的浮点变量
在我的PYTHON程序中,我加载了很多(浮动)数字供以后使用。我说的是1亿甚至更多的数字。我似乎遇到了RAM内存空间的问题。由于我保存的数字不需要高精度(3-4位数就足够了),而且通常很小(在-1000..1000范围内),因此我不使用64位浮点提供的精度 是否有可能使用更少的内存(可能是8位或16位)保存浮点数在PYTHON中保存小于64位的浮点变量,python,Python,在我的PYTHON程序中,我加载了很多(浮动)数字供以后使用。我说的是1亿甚至更多的数字。我似乎遇到了RAM内存空间的问题。由于我保存的数字不需要高精度(3-4位数就足够了),而且通常很小(在-1000..1000范围内),因此我不使用64位浮点提供的精度 是否有可能使用更少的内存(可能是8位或16位)保存浮点数 谢谢大家! 我将使用numpy库中的类型,它提供了以下感兴趣的类型: float_ float16 float32 float64 所以,如果您想要一个16位的浮点数(1个符号位,5
谢谢大家! 我将使用numpy库中的类型,它提供了以下感兴趣的类型:
float_
float16
float32
float64
所以,如果您想要一个16位的浮点数(1个符号位,5个指数,和
10表示尾数),您可以使用以下内容:
import numpy as np
x = np.float16(10.0)
另请参见,使用包的
f
格式将它们打包成浮点格式值数组。“…1亿个或更多数字。似乎我在RAM上遇到了内存空间问题。”真的吗?你希望能用8吉比特的内存计算超过1亿个数字?