Mat*_*ias 10 python numpy 128-bit
我通过我的python终端(在Enthought Canopy IDE中)检查了指针的大小
import ctypes
print (ctypes.sizeof(ctypes.c_voidp) * 8)
Run Code Online (Sandbox Code Playgroud)
我有一个64位的架构,并且工作numpy.float64得很好.但我不能用np.float128?
np.array([1,1,1],dtype=np.float128)
Run Code Online (Sandbox Code Playgroud)
要么
np.float128(1)
Run Code Online (Sandbox Code Playgroud)
结果是:
AttributeError: 'module' object has no attribute 'float128'
Run Code Online (Sandbox Code Playgroud)
我正在运行以下版本:
sys.version_info(major=2, minor=7, micro=6, releaselevel='final', serial=0)
Run Code Online (Sandbox Code Playgroud)
更新:从评论来看,在 64 位系统上使用 128 位浮点数似乎毫无意义。
\n\nanaconda我正在64 位 Ubuntu 14.04 系统上使用\nsys.version_info(major=2, minor=7, micro=9, releaselevel=\'final\', serial=0)
128 位浮点数工作正常:
\n\nimport numpy\na = numpy.float128(3)\nRun Code Online (Sandbox Code Playgroud)\n\n这可能是一个分配问题。尝试:
\n\n编辑:\n从评论中更新:
\n\n\n\n不是我的反对票,但这篇文章并没有真正回答“为什么我的机器上不存在 np.float128”隐含的问题。真正的答案是\n这是特定于平台的:float128存在于某些平台上,但\n不存在于其他平台上,而在它确实存在的平台上,它几乎\n肯定只是80位x87扩展精度类型,已填充到 128\n 位。\xe2\x80\x93 马克·狄金森
\n