math.ceil()Function to Round Up a Number in Python 2.x:
- Use Simple Arithmetic to Round Up a Number in Python
- Use Floor Division Operator to Round Up a Number in Python
numpy.ceil()Method to Round Up a Number in Python
This tutorial explains different methods to explain the concept of rounding up a number. There are various ways to round up a number in the correct way. For example, a number can be rounded using the
math module provided by Python, using the
numpy module, and so on. The tutorial will explain these different methods using example code snippets.
math.ceil() Function to Round Up a Number in Python 2.x:
If you are using the Python 2.x version, you can use the
math.ceil() function to round up a number correctly. The
ceil() function is provided by the
math library of Python. So we need to import the
math library first. The
ceil function takes the number that needs to be rounded. It can take an expression and round the resulting number as per the results.
However, it should be noted that in Python 2.x,
int/float results in a
float. So we need to give one of the values in
float to the
ceil function to get accurate results. If both values of an expression in the
ceil function is an integer, it can produce wrong results.
An example code to illustrate the concept of how to use
math.ceil() to round up a number in Python 2.x is given below.
import math print(math.ceil(27/4)) print(math.ceil(27.0/4))
Use Simple Arithmetic to Round Up a Number in Python
A number can also be rounded up by using simple arithmetic in Python. This method is applicable to all versions of Python. It casts the first expression into an
integer data type and adds 0 or 1 value based on the result of another expression. Other expression finds the modulus of the number with the same denominator and checks if it is greater than 0 or not. If the remainder is greater than 0, it adds one to the first expression, and if it is false, it adds 0 to the first expression.
An example code is given below to explain how to use simple arithmetic to round up a number in Python without importing the
n = 22 div = 5 print(int(n/div) + (n % div>0))
Use Floor Division Operator to Round Up a Number in Python
The symbol for the floor division operator is
//. It works in the same way as a simple division operator,
/, but it also rounds the number down. So, It is usually used to round down the number in Python. However, we can modify its use to round up a number as well. We can do so by negating the answer by dividing
negative numbers. It will save the cost of any import or use of float and any other conditions. It works with the integers only.
An example code is given below to elaborate on how to use the
floor operator to round up a number in Python.
n = 22 div = 5 answer = (-(-n//div)) print(answer)
Similarly, we can round up a number by adding the denominator to the numerator and subtracting 1 from it. Then the whole expression will be floor divided with the denominator. It is a straightforward method that does not involve any floating points and external modules also. An example code of this method is given below.
numerator = 22 denominator = 5 answer = (numerator + denominator - 1) // denominator print(answer)
numpy.ceil() Method to Round Up a Number in Python
Another method to round up a number is to use the
numpy.ceil() method. First, we need to import the
numpy module in the script and then use the
ceil() method to round up a number. The return type of the
ceil() function is float, so even if the expression is in integers, the output will be in the float. The output can be explicitly cast to integer data type by explicitly casting it to be an integer.
An example code of this method to round up a number in Python is given below.
import numpy as nmp n = 22 div = 5 answer = n/div print(nmp.ceil(answer)) print(int(nmp.ceil(answer)))