作者:大伟 | 来源:互联网 | 2022-11-22 05:39
我想要一个函数,如果它小于10,则将数字舍入为10,如果它在10到1000之间,则舍入为100,依此类推.
这将有助于数字连接问题,所以我不必将数字转换为str和back.
def roundup(n):
if n <0: return 0
if n <10: return 10
if n <100: return 100
if n <1000: return 1000
if n <10000: return 10000
我想知道是否有一种自然的方法来做到这一点,而不只是将'if'放在一起
1> Victor &#39;Chri..:
这更像是一个数学问题,而不是一个特定于python的问题,但你实际上是在记录一个数字的日志.
def round_base_10(x):
if x <0:
return 0
elif x == 0:
return 10
return 10**math.ceil(math.log10(x))