将科学记数法中的浮点数转换为“d.ddx10^(-n)”

我正在构建一个计算器来计算一些与化学相关的计算。所以大多数结果将是非常小的值。

一个示例结果是4.840909814726882e-09

如何以类似的格式显示此值4.84 x 10^(-9)

回答

尝试这个:

format(4.840909814726882e-09, '.2e').replace('e', ' x 10^(') + ')'

输出:
4.84 x 10^(-09)
这不正是你想要的结果,但它的简单。

还有:

def my_format(num):
    s = format(num, '.2e')
    base, exp = s.split('e')
    return f'{base} x 10^({int(exp)})'

输出:

>>> my_format(4.840909814726882e-09)
'4.84 x 10^(-9)'

这更复杂,但这正是您想要的结果。


以上是将科学记数法中的浮点数转换为“d.ddx10^(-n)”的全部内容。
THE END
分享
二维码
< <上一篇
下一篇>>