对大指数数进行舍入,例如(6.624147...e+25 至 6.62e+25)

Can*_*ice 1 python rounding python-3.x

我有一个需要四舍五入的非常大的数字列表。例如:

6.624147027484989e+25我需要四舍五入到6.62e25.

然而,np.aroundmath.ceilinground()等...不起作用。我在想,因为它不是四舍五入6.624147027484989e+256.62e25,而是使它成为一个整数,而我实际上需要使整个数字小得多......如果这有意义的话。

gre*_*ggo 5

我想,如果我正确理解你的问题,你可以使用float("%.2e" % x)

这只是将值转换为指数格式的文本,带有两个小数位(因此“pi”将变成"3.14e+00"),然后将其转换回浮点数。它将适用于您的示例以及小数字,例如5.42242344e-30

对于 python 3.6+,最好使用float(f"{x:.2e}")- 感谢@gabriel-jablonski

  • 由于 f 字符串通常是 python3.6+ 的首选方法,因此我建议使用 `float(f"{x:.2e}")` 代替。 (2认同)