Python is well known for its numerical computation libraries and modules. As one of the most popular languages for data science , Python provides many methods and functions to handle complex numerical computations. When we write a program in Python, we often have to do numerical calculations using Python math operators .
Python supports many types of numerical data types , and float and integers are the common ones. A floating-point number can contain a huge decimal point number; however, we can round that floating-point number to a whole number using some of the Python built-in methods.
In this article, we have mentioned the different Python methods to round off a floating-point number to a whole number. Also, by the end of this article, you will have the answer to the question, "How to round to the whole numbers in Python?" and truncate a long decimal point number to a 2 or 3 decimal point number using the
round()
function.
How to Round to Whole Numbers in Python?
With the help of the
round()
method, we can round a decimal point number to a whole number or integer. Python also has a built-in
math
module, which is inherited from the C language, and in this module, we get two methods,
ceil()
and
floor()
, that can also be used for rounding up and down values to a whole number or integer.
All these three methods can round the floating-point number to an integer number, and with the help of these methods, you can also perform Python type conversion , which results in changing the float data type to integer data type. These three methods are:
-
The
round()
function rounds up and down a floating or decimal point value. -
The
math.floor()
method rounds down a floating-point value to its next integer value. -
The
math.ceil()
method rounds up a floating-point value to its next integer value.
1. How to Round to Whole Numbers in Python Using the Round Function?
The
round()
function can accept a decimal or floating-point number and returns a rounded up or down integer value for the specified decimal number. The decimal number
n.xxx
will be rounded up to
n+1
if the .xxx is greater than
0.5
.
Example
>>> round(0.78)
1
>>> round(1.78)
2
>>> round(2.88)
3
The decimal number
n.xxx
will be rounded down to
n
if the
.xxx
is less than
0.5
.
Example
>>> round(0.45)
0
>>> round(1.34)
1
>>> round(2.23)
2
The decimal number
n.xxx
will be rounded to the nearest largest even value
n+1
or
n
if
.xxx
is equal to
0.5
.
Example
>>> round(0.5)
0
>>> round(1.5)
2
>>> round(2.5)
2
>>> round(3.5)
4
>>> round(4.5)
4
2. How to Round to Whole Numbers in Python Using the math.floor() Method?
Using the round() method, we can round a decimal point number to an integer, but the rounding up and down of the number depends on the decimal point numbers. But if you want to only round down the number without being concerned with the decimal number, you can use the
math.floor()
method.
The
math.floor()
method accepts a floating-point number and rounds it down to an integer or whole number value. In
Python programming
, you will often be using
math.ceil()
and
math.floor()
methods more than the
round()
function.
Example of Rounding Down a Floating-point Number to an Integer
import math
print("4.5 floor down to: ", math.floor(4.5))
print("5.6 floor down to: ", math.floor(5.6))
print("7.9 floor down to: ", math.floor(7.9))
print("8.10 floor down to: ", math.floor(8.10))
print("11.62 floor down to: ", math.floor(11.62))
print("-7.98 floor down to: ", math.floor(-7.98))
print("-7.11 floor down to: ", math.floor(-7.11))
Output
4.5 floor down to: 4
5.6 floor down to: 5
7.9 floor down to: 7
8.10 floor down to: 8
11.62 floor down to: 11
-7.98 floor down to: -8
-7.11 floor down to: -8
How to Round to Whole Numbers in Python Using the math.ceil() Method?
The math.ceil() method rounds up a floating-point number to an integer or whole number. It rounds up the number to the nearest greater integer.
Example of Rounding Up a Floating-point Number to the Whole Number or Integer
import math
print("4.5 ceil up to: ", math.ceil(4.5))
print("5.6 ceil up to: ", math.ceil(5.6))
print("7.9 ceil up to: ", math.ceil(7.9))
print("8.10 ceil up to: ", math.ceil(8.10))
print("11.62 ceil up to: ", math.ceil(11.62))
print("-7.98 ceil up to: ", math.ceil(-7.98))
print("-7.11 ceil up to: ", math.ceil(-7.11))
Output
4.5 ceil up to: 5
5.6 ceil up to: 6
7.9 ceil up to: 8
8.10 ceil up to: 9
11.62 ceil up to: 12
-7.98 ceil up to: -7
-7.11 ceil up to: -7
The Second Parameter of the round(n,d) Method
The
round()
function also accepts a second argument that represents the number of decimal digits we want to round up in the given floating-point number.
Syntax
round(floating_point_number, number_of_decimal_digits)
The second parameter for round functions is optional, and by default, its value is None. Also, it accepts a positive integer value, which represents up to which decimal point we want to round up the given value.
Round Up to | Example round | Output |
Tense |
round(11.67, 0)
|
12.0 |
Ones Place |
round(11.67, 1)
|
11.7 |
Tenth Place |
round(11.67, 2)
|
11.67 |
Hundredths Place |
round(11.67324, 3)
|
11.673 |
Thousands Place |
round(11.67324, 4)
|
11.6732 |
Rounding Up or Down a Python List
For most cases, we get a list of floating-point numbers, and rounding up or down individual values using for loop could be tedious. But using the Python
map()
function, we can round up or down every floating-point number present in the list using a single line of code.
Example of Rounding Up or Down the Python List Using the Round Function
my_list = [1.67, 8.27, 9.56, 8.25, 9.76, 6.36, 11.23, 10.35, 11.45]
round_up_down = list(map (round, my_list))
print("The Round up and down list of\n", my_list,"is\n",round_up_down)
Output
The Round up and down list of
[1.67, 8.27, 9.56, 8.25, 9.76, 6.36, 11.23, 10.35, 11.45] is
[2, 8, 10, 8, 10, 6, 11, 10, 11]
Example of Rounding Up the Python List Using the math.ceil Method
import math
my_list = [1.67, 8.27, 9.56, 8.25, 9.76, 6.36, 11.23, 10.35, 11.45]
ceil_up = list(map (math.ceil, my_list))
print("The Round up list of\n", my_list,"is\n",ceil_up)
Output
The Round up list of
[1.67, 8.27, 9.56, 8.25, 9.76, 6.36, 11.23, 10.35, 11.45] is
[2, 9, 10, 9, 10, 7, 12, 11, 12]
Example of Rounding Down the Python List Using the math.floor Method
import math
my_list = [1.67, 8.27, 9.56, 8.25, 9.76, 6.36, 11.23, 10.35, 11.45]
floor_down = list(map (math.floor, my_list))
print("The Round down list of\n", my_list,"is\n",floor_down)
Output
The Round down list of
[1.67, 8.27, 9.56, 8.25, 9.76, 6.36, 11.23, 10.35, 11.45] is
[1, 8, 9, 8, 9, 6, 11, 10, 11]
Conclusion
In this Python tutorial, you learned how to round to whole numbers in Python using round(), math.ceil(), and math.floor() methods. You also learned how the round() function works if the decimal point number is 0.5.
For most of your Python programming, you will be using the
math.ceil()
and
math.floor()
methods if you want to round up and down a decimal number to an integer or whole number. The round() method is ideal when you want to round a floating-point number to a specified whole number, and by specifying the second argument in the round function, you can achieve this.
People are also reading:
- Python While Loop
- Name, Namespace, & Scope in Python
- Python if, if…else, if…elif…else & Nested if Statement
- Input-Output (IO) and Import in Python
- Python Comments, Statements, Indentation & Docstring
- Keywords & Identifiers in Python
- Python Frameworks
- Best Way to Learn Python
- Python Operators
- How to Substring a String in Python
Leave a Comment on this Post