我需要将浮点数舍入以显示在 UI 中。例如,一个有效数字:
1234 -> 1000 0.12 -> 0.1 0.012 -> 0.01 0.062 -> 0.06 6253 -> 6000 1999 -> 2000
有没有使用 Python 库的好方法,还是我必须自己编写?
您可以使用负数来舍入整数:
>>> round(1234, -3) 1000.0
因此,如果您只需要最重要的数字:
>>> from math import log10, floor >>> def round_to_1(x): ... return round(x, -int(floor(log10(abs(x))))) ... >>> round_to_1(0.0232) 0.02 >>> round_to_1(1234243) 1000000.0 >>> round_to_1(13) 10.0 >>> round_to_1(4) 4.0 >>> round_to_1(19) 20.0
如果它大于 1,您可能必须注意将浮点数转换为整数。