我要舍这样42949672 - > 42949700,2147483647 - > 2147480000,4252017622 - > 4252020000等回合显著数字在python
我尝试使用以下,但只适用于第一个。我怎样才能做出更一般的?谢谢
round(42949672, -2)
我要舍这样42949672 - > 42949700,2147483647 - > 2147480000,4252017622 - > 4252020000等回合显著数字在python
我尝试使用以下,但只适用于第一个。我怎样才能做出更一般的?谢谢
round(42949672, -2)
我假设你要舍入到6显著人物。如果你想圆int
S,你可以使用
def round_sf(number, significant):
return round(number, significant - len(str(number)))
print(round_sf(4252017622, 6))
结果:
4252020000
是的,这是有效的。谢谢! – golu
要四舍五入到您所定位的任何数字,您可以简单地将数字作为负数,然后将其转换为整数。
digits = 4
num = 2147483647
rounded_num = int(round(num, -digits))
如果你想保持6个显著数字始终,这就是我在你的问题看到了模式,你会想这样做:
def sf_round(num, sig_fig):
return int(round(num, -(len(str(num))-sig_fig)))
'轮(2147483647,-4)'根据需要给'2147480000'。你需要告诉它有多少个数字来回合。 –
是的,但一轮(42949672,-4)不给42949700.我想我需要自己的数位数学 – golu