这是一个非常具体的问题,但尽管有大量的网上资源,我似乎找不到一个能做我想要的事情的函数。假设我有一个任意的浮点数,比如说 "2"。我想把这个浮点数转换为以下格式。
'2.000000E+000'
也就是说:指数前有8位数字,指数后有3位数字(算上符号有4位)。有几个函数几乎(但不完全)产生了所需的输出。使用
"%.6e" %float(2)
yields the output
'2.000000e+00'
这使我能够指定我必须要有多少个数字before指数,但不是之后 - 它总是给我两个数字。另一方面,函数numpy.format_float_scientific。
numpy.format_float_scientific(2.0000000000, exp_digits=3,precision=6)
Out[30]: '2.e+000'
permits me to specify the number of digits 之后指数,但不是之前。我希望两者都能做到。你知道我怎样才能做到这一点吗?