我试图在一个相当大的整数上使用python 3.6执行一个相对简单的操作(平方根),如下所示:
import math
y = math.sqrt(y_square)
print(y_square)
print(y)
print(y**2 - y_square)
哪个收益率:
y_square = 112453967836240530612698821058629451437284506947138273586752978210411860041664976976388128300702880194729095784116728402767535807027702758336085695030907730304293242710204005540029929073563476552311529976337882620026357537308679
y = 3.353415689058554e+113
y**2 - ysquare = 2.1040543606193494e+211
虽然我已经考虑了我的数字大小的int溢出,但是我已经读过python3没有int的大小限制,因为它们是以任意精度定义的。
总而言之,我根本不明白为什么我得到一个212位的数字,因为我的意思是我想要的...... 0。
提前感谢您的帮助!