gpt4 book ai didi

python - 在 python 中以科学记数法打印非常大的长

转载 作者:太空狗 更新时间:2023-10-29 17:13:32 25 4
gpt4 key购买 nike

有没有办法让 python 以科学计数法打印非常大的 longs?我说的是 10^1000 或更大数量级的数字,在这个尺寸下标准打印“%e”% num 失败。

例如:

Python 2.6.2 (release26-maint, Apr 19 2009, 01:56:41) [GCC 4.3.3] on linux2Type "help", "copyright", "credits" or "license" for more information.>>> print "%e" % 10**1001.000000e+100>>> print "%e" % 10**1000Traceback (most recent call last):  File "", line 1, in TypeError: float argument required, not long

看起来 python 正在尝试将 long 转换为 float 然后打印它,是否可以让 python 只打印科学记数法而不将其转换为 float?

最佳答案

gmpy救援……:

>>> import gmpy
>>> x = gmpy.mpf(10**1000)
>>> x.digits(10, 0, -1, 1)
'1.e1000'

当然,作为原作者和 gmpy 的提交者,我是有偏见的,但我确实认为它简化了像这样没有它就很繁琐的任务(我如果没有 some 附加组件,我不知道一个简单的方法,gmpy 绝对是我会选择的 附加组件这里;-).

关于python - 在 python 中以科学记数法打印非常大的长,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1529569/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com