相关疑难解决方法(0)

如何在Python中抑制科学记数法?

这是我的代码:

x = 1.0
y = 100000.0    
print x/y
Run Code Online (Sandbox Code Playgroud)

我的商显示为 1.00000e-05

有没有办法压制科学记数并使其显示为 0.00001?我将把结果用作字符串.

python floating-point

124
推荐指数
8
解决办法
13万
查看次数

Python 中的科学记数法格式

如何获得以下格式(输入值始终小于 0.1):

> formatting(0.09112346)
0.91123E-01
> formatting(0.00112346)
0.11234E-02
Run Code Online (Sandbox Code Playgroud)

等等。

我正在寻找一些优雅的解决方案。我已经在使用下面给出的自定义函数:

def formatting(x, prec=5):
    tup    = x.as_tuple()
    digits = list(tup.digits[:prec])
    dec    = ''.join(str(i) for i in digits)
    exp    = x.adjusted()
    return '0.{dec}E{exp}'.format(dec=dec, exp=exp)
Run Code Online (Sandbox Code Playgroud)

python formatting scientific-notation

10
推荐指数
2
解决办法
1万
查看次数