在the documentation of mpmath library第8页中提到
数字的大小没有限制
>>> print(mpf(2)**32582657 - 1)
1.24575026015369e+9808357
我检查了一下这个密码是否有效。然而,在同一个脚本中我发现
mp.mpf(1e309)
mpf('+inf')
这是一个bug吗?如何将mpmath库设置为任意数量级的数字?
在the documentation of mpmath library第8页中提到
数字的大小没有限制
>>> print(mpf(2)**32582657 - 1)
1.24575026015369e+9808357
我检查了一下这个密码是否有效。然而,在同一个脚本中我发现
mp.mpf(1e309)
mpf('+inf')
这是一个bug吗?如何将mpmath库设置为任意数量级的数字?
1条答案
按热度按时间p1iqtdky1#
不,不是窃听器。
在您的第一个代码片段中,
mpf(2)**32582657
将被分派到自定义的提升到幂运算符**
中,该运算符将使用任意精度功能。在第二个代码片段中,
1e309
是一个数字文字,它将被Python解释器解析为体系结构原生浮点数,309是一个指数,在达到mpmath
之前,它会大到适合底层IEEE754格式相反,如果你发布
你会得到预期的结果