In this tutorial, I will explain how to use the floor() function in Python. As a Python developer working on a project for one of my New York clients, I often encounter scenarios where I need to round down numbers to the nearest integer. This is where the floor() function is useful. We will get deep into this function, and explore its usage with examples.
Floor() Function in Python
The floor() function in Python is part of the math module and is used to return the largest integer less than or equal to a given number. This function is particularly useful in scenarios where you need to round down a floating-point number to the nearest whole number.
Syntax of the Floor() Function in Python
The syntax for the floor() function is simple:
import math
math.floor(x)Here, x is the number you want to round down. The function returns the largest integer less than or equal to x.
Read How to Use the insert() Function in Python?
Examples of the Floor() Function in Python
Let’s explore some practical examples to understand the floor() function better. We’ll use USA-specific names and scenarios to make these examples relatable.
Example 1: Financial Calculations
Imagine you are developing a financial application for a New York-based startup. You need to calculate the number of full shares a user can buy with a given amount of money. Here’s how you can use the floor() function:
import math
# Price of one share
share_price = 123.45
# Amount of money the user has
user_money = 1000
# Calculate the number of full shares the user can buy
full_shares = math.floor(user_money / share_price)
print(f"The user can buy {full_shares} full shares.")Output:
The user can buy 8 full shares.I have executed the above example and added the screenshot below.

In this example, the floor() function ensures that the number of shares is rounded down to the nearest whole number, preventing the user from attempting to buy fractional shares.
Check out How to Use the arange() Function in Python?
Example 2: Data Analysis
Suppose you are analyzing demographic data for a survey conducted in California. You need to group ages into decades. The floor() function can help you categorize ages effectively:
import math
# List of ages
ages = [23, 45, 67, 34, 29, 54, 76, 38, 21]
# Categorize ages into decades
age_groups = [math.floor(age / 10) * 10 for age in ages]
print(f"Age groups: {age_groups}")Output:
Age groups: [20, 40, 60, 30, 20, 50, 70, 30, 20]I have executed the above example and added the screenshot below.

This example demonstrates how the floor() function helps in grouping ages into decades by rounding down to the nearest multiple of 10.
Read How to Use the Python Pass Function?
Example 3: Game Development
In a game development scenario, you might need to calculate the number of complete levels a player has completed based on their total points. Let’s take an example of a game developed in Texas:
import math
# Points required to complete one level
points_per_level = 150
# Total points the player has
total_points = 875
# Calculate the number of complete levels
completed_levels = math.floor(total_points / points_per_level)
print(f"The player has completed {completed_levels} levels.")Output:
The player has completed 5 levels.I have executed the above example and added the screenshot below.

Here, the floor() function ensures that only fully completed levels are counted, providing an accurate level count for the player.
Read How to Use the trim() Function in Python?
Handle Edge Cases
While using the floor() function, it is essential to consider edge cases to ensure your application behaves as expected.
Edge Case 1: Negative Numbers
The floor() function works seamlessly with negative numbers by rounding them down to the nearest integer. For example:
import math
negative_number = -2.8
result = math.floor(negative_number)
print(f"The floor of {negative_number} is {result}.")In this case, the output will be -3 , as the floor() function rounds down to the nearest integer.
Edge Case 2: Zero
When the input is zero, the floor() function will return zero:
import math
zero = 0
result = math.floor(zero)
print(f"The floor of {zero} is {result}.")The output will be 0 , as expected.
Check out How to Use the strip() Function in Python?
Compare Floor() Function with Other Rounding Functions in Python
Python provides several other rounding functions, such as ceil and round. Understanding the differences between these functions is crucial for choosing the right one for your needs.
1. Ceil Function
The ceil function, also part of the math module rounds a number up to the nearest integer. Here’s a quick comparison:
import math
number = 4.7
floor_result = math.floor(number)
ceil_result = math.ceil(number)
print(f"The floor of {number} is {floor_result}.")
print(f"The ceil of {number} is {ceil_result}.")In this example, the floor() function returns 4, while the ceil function returns 5.
Read How to Implement and Use the hash() Functions in Python?
2. Round Function
The round() function rounds a number to the nearest integer, but it can round up or down depending on the fractional part. For instance:
number = 4.5
round_result = round(number)
print(f"The rounded value of {number} is {round_result}.")In this case, the output will be 4 if using Python’s default rounding behavior, which rounds to the nearest even number in the case of a tie.
Conclusion
In this tutorial, I explained how to use the floor() function in Python. I discussed the floor() function in Python with syntax and examples to achieve financial calculation , data analysis , game development. We also discussed how to handle edge cases and how to compare the floor() function with other rounding functions in Python.
You may also like to read:
- How to Use the map() Function in Python?
- Difference Between *args and **kwargs in Python
- How to Use the randint() Function in Python?

I am Bijay Kumar, a Microsoft MVP in SharePoint. Apart from SharePoint, I started working on Python, Machine learning, and artificial intelligence for the last 5 years. During this time I got expertise in various Python libraries also like Tkinter, Pandas, NumPy, Turtle, Django, Matplotlib, Tensorflow, Scipy, Scikit-Learn, etc… for various clients in the United States, Canada, the United Kingdom, Australia, New Zealand, etc. Check out my profile.