Python numpy科学计数法限制小数位数

6
我正在尝试减少一些计算后的小数位数。我遇到问题的print()代码如下:
print("Mean resistivity: {res} Ohm m".format(res=np.mean(resistivity)))

然后它会输出这个:

Mean resistivity: 1.6628449915450776e-08 Ohm m

现在我想要将打印的小数位数减少到3位。我尝试使用字符串格式化来实现,就像这样:
print("Mean resistivity: {res:.3f} Ohm m".format(res=np.mean(resistivity)))

然而,这段代码输出的是:
Mean resistivity: 0.000 Ohm m

我实际想要的是这个:

我实际想要的是这个:

Mean resistivity: 1.663e-8 Ohm m

如何将res格式化为科学计数法,但只显示三位小数?


使用格式打印 specifier - dawg
1个回答

6

这是Python3吗?如果是的话,这应该可以工作:{res:.3E}

@编辑 这也适用于Python2 - 规范


在Python 3中也已确认。 - Jeon
是的,谢谢!它有效 :) 也可以使用小写“e”。我要将其文档加入书签。 - Dartmouth
1
@Dartmouth 你应该知道,当你转向 Python 3.x 时,会发现在 2.x 文档中有一些轻微的增强。此外,请注意,Python 3.6(即将到来)具有更简单的实现,共享相同的迷你格式化语言。为未来做好书签... https://docs.python.org/3.6/reference/lexical_analysis.html#f-strings - NaN

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接