Borislav Hadzhiev
Last updated: Jul 11, 2022
Photo from Unsplash
Use the round()
function to round a number to the nearest 1000, e.g.
result = round(num, -3)
. When the round()
function is called with a second
argument of -3
, it rounds to the closest multiple of one thousand.
import math # ✅ Round number to nearest 1000 num_1 = 4678 result_1 = round(num_1, -3) print(result_1) # 👉️ 5000 num_2 = 4432 result_2 = round(num_2, -3) print(result_2) # 👉️ 4000 # -------------------------------------- # ✅ Round number UP to nearest 1000 def round_up_to_nearest_1000(num): return math.ceil(num / 1000) * 1000 print(round_up_to_nearest_1000(3100)) # 👉️ 4000 print(round_up_to_nearest_1000(1)) # 👉️ 1000 # -------------------------------------- # ✅ Round number DOWN to nearest 1000 def round_down_to_nearest_1000(num): return math.floor(num / 1000) * 1000 print(round_down_to_nearest_1000(5999)) # 👉️ 5000 print(round_down_to_nearest_1000(5004)) # 👉️ 5000
We used the round()
function to round a number to the nearest 1000.
The round function takes the following 2 parameters:
Name | Description |
---|---|
number | the number to round to ndigits precision after the decimal |
ndigits | the number of digits after the decimal, the number should have after the operation (optional) |
ndigits
is a negative number, the round()
function rounds to the left of the decimal.ndigits
is -1
, the function rounds to the closest multiple of 10
.ndigits
is -2
, it rounds to the nearest 100
.ndigits
is -3
, it rounds to the nearest 1000
, etc.print(round(3456, -1)) # 👉️ 3460 print(round(3456, -2)) # 👉️ 3500 print(round(3456, -3)) # 👉️ 3000
To round a number up to the nearest 1000:
math.ceil()
method passing it the number divided by 1000
.1000
.import math def round_up_to_nearest_1000(num): return math.ceil(num / 1000) * 1000 print(round_up_to_nearest_1000(3100)) # 👉️ 4000 print(round_up_to_nearest_1000(1)) # 👉️ 1000 print(round_up_to_nearest_1000(2350)) # 👉️ 3000
The math.ceil method returns the smallest integer greater than or equal to the provided number.
import math print(math.ceil(1234.001)) # 👉️ 1235 print(math.ceil(1234.999)) # 👉️ 1235
math.ceil
method rounds the number up.Here is a step-by-step example of rounding a number up to the nearest thousand.
import math print(4258 / 1000) # 👉️ 4.258 print(5600 / 1000) # 👉️ 5.6 print(math.ceil(4258 / 1000)) # 👉️ 5 print(math.ceil(5600 / 1000)) # 👉️ 6 print(math.ceil(4258 / 1000) * 1000) # 👉️ 5000 print(math.ceil(5600 / 1000) * 1000) # 👉️ 6000
1000
and then multiply with 1000
to shift 3 decimal places to the right and left, so that math.ceil()
works on the thousands.This is a two step process:
1000
and round the result up to the nearest integer.1000
to get the number rounded up to the nearest
1000
.To round a number down to the nearest 100:
math.floor()
method passing it the number divided by 1000
.1000
.1000
.import math def round_down_to_nearest_1000(num): return math.floor(num / 1000) * 1000 print(round_down_to_nearest_1000(5999)) # 👉️ 5000 print(round_down_to_nearest_1000(5004)) # 👉️ 5000 print(round_down_to_nearest_1000(7900)) # 👉️ 7000
The math.floor method returns the largest integer less than or equal to the provided number.
import math print(math.floor(13.999)) # 👉️ 13 print(math.floor(13.001)) # 👉️ 13
math.floor
method rounds the number down.Here is a step-by-step example of rounding a number down to the nearest 1000.
import math print(5900 / 1000) # 👉️ 5.9 print(4300 / 1000) # 👉️ 4.3 print(math.floor(5900 / 1000)) # 👉️ 5 print(math.floor(4300 / 1000)) # 👉️ 4 print(math.floor(5900 / 1000) * 1000) # 👉️ 5000 print(math.floor(4300 / 1000) * 1000) # 👉️ 4000
1000
and then multiply with 1000
to shift 3 decimal places to the right and left, so that math.floor()
works on the thousands.This is a two step process:
1000
and round the result down to the nearest integer.1000
to get the number rounded down to the nearest
1000
.