J.G*_*alt 3 python string formatting python-3.x
这是一个非常具体的问题,但是尽管有大量的在线资源,但我似乎找不到能满足我需要的功能。假设我有一个任意的浮点数,例如说“ 2”。我想将浮点数转换为以下格式:
'2.000000E+000'
Run Code Online (Sandbox Code Playgroud)
也就是说:指数前有8位数字,指数后有3位数字(四位为正负号)。有一些功能几乎(但不完全)产生所需的输出。使用
"%.6e" %float(2)
Run Code Online (Sandbox Code Playgroud)
产生输出
'2.000000e+00'
Run Code Online (Sandbox Code Playgroud)
这使我可以指定在指数之前(而不是在指数之后)必须输入的位数-它始终为我提供两位数字。另一方面,函数numpy.format_float_scientific:
numpy.format_float_scientific(2.0000000000, exp_digits=3,precision=6)
Out[30]: '2.e+000'
Run Code Online (Sandbox Code Playgroud)
允许我指定的位数后的指数,而不是之前。我想两者都做。你知道我怎么能做到吗?
您可以尝试unique到False了numpy:
numpy.format_float_scientific(2.0000000000, unique=False, exp_digits=3,precision=6)
Run Code Online (Sandbox Code Playgroud)
输出:
'2.000000e+000'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
31 次 |
| 最近记录: |