Round Number up to 2 decimal places in Python


Rounding up numbers is the most common use case in any programming language that a developer has to deal with.

If you are new to Python Programming and looking for ways to convert a float value with 2 decimal precision, below are various ways to achieve it.


Option 1: using built-in round() function

    Syntax:
    round(number[, ndigits])
    Example:
    number = 99.981234
    rounded_number = round(number, 2)
    print(rounded_number)
    Output:
    99.98

    Documentation:

    Built-in round() function: https://docs.python.org/2/library/functions.html#round

    Note: The behavior of round() for floats can be surprising: for example, round(2.675, 2) gives 2.67 instead of the expected 2.68. This is not a bug: it’s a result of the fact that most decimal fractions can’t be represented exactly as a float.

    Read: Floating Point Arithmetic: Issues and Limitations


Option 2: using String formatting


Option 3: using f-string (Python 3.6+)


Option 4: using decimal module


Option 5: using numpy module

    Example:
    import numpy as np
    
    number = 299.1415
    rounded_number = np.round(number, 2)
    print(rounded_number)
    Output:
    299.14

    Read More:

    https://numpy.org

Option 6: using math module


I have added the links to the official documentation for each example so you can visit and get more details.

Facing issues? Have Questions? Post them here! I am happy to answer!

Author Info:

Rakesh (He/Him) has over 14+ years of experience in Web and Application development. He is the author of insightful How-To articles for Code2care.

Follow him on: X

You can also reach out to him via e-mail: rakesh@code2care.org

Copyright © Code2care 2024 | Privacy Policy | About Us | Contact Us | Sitemap