python - 如何迭代每个`numpy.float16`
问题描述
对于某个任务,我对一个复杂函数的重复调用太多了,f(x)
在哪里调用它x
是浮动的。我没有很大的浮点数,也不需要太高的精度,所以我想为什么不使用 f(x) 的查找表,其中 x 是 float16,查找表的最大大小是 (2**16)。我打算使用np.float16
. 我有点坚持如何迭代所有浮点数的范围。在C/C++
中,我会使用uint16_t
,不断增加它。如何使用 python 创建此表?
解决方案
您可以使用 生成所有可能的值arange
,然后使用 将这些值重新解释为float16
值view
。这是一个例子:
np.arange(65536, dtype=np.uint16).view(np.float16)
这应该为您提供所有可能的float16
值。请注意,许多是 NaN 值。
推荐阅读
- cmd - GTK+3 应用程序无法在 Windows 上运行
- linux - GCP 计算实例上的部署失败为什么从 Gitlab 推送更改
- javascript - 在 createScript 错误中获取意外的标识符
- r - 提取数据框R列表中列的内容
- postgresql - osm点数据坐标太大
- c# - c#中的另一个变量中的一个变量
- java - vertx executeBlocking 不同的行为
- python - 而在python中没有意义
- java - 当 WebDriverWait 或隐式等待不起作用时如何在 Selenium WebDriver 中等待
- r - 如何根据“已选中”与“未选中”进行重塑