我要舍這樣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