大佬, 分享一下你的代码啊。我用如下代码
import gmpy2
print(gmpy2.mpz(2)**(10**9))
也只计算出了 2**(10**9),如果是2**(10**10),同样会报错。 2**(10**9)的计算结果如下,大家可以看看结果是不是一样的:
前几位是:4398282079208540005159421318391706644699765194388594973565462303684433729905554443830043984407181821079925003
最后面的几位是:3834591063914659350598833620642843023291606821041787109376
pycharm的输出窗口,明显有卡顿。大家有兴趣的,可以算算看,结果是否一样?
但还是有个问题啊:算出来的结果是 1048540位,但是估算的话:
2**(10**9) = (2**10)**(10**8) 约等于 (10**3)**(10**8),应该有10**8,一亿位啊。是我估算错了吗?谢谢
【 在 pgw 的大作中提到: 】
不要转换成串来输出,用to_bytes,我这里这个大整数占用1.25G内存。
--
FROM 120.242.251.*