89DEVs

Python: How to format number with commas?

How to format a number with commas?

To format a number with commas, use f-strings in Python 3.6+ or the format() function in older versions of Python 3. To clarify, the formatting will add a comma for every thousand as shown below. 5000 is formatted to 5,000 50000 is formatted to 50,000 500000 is formatted to 500,000 5000000 is formatted to 5,000,000

format number with commas using f-strings

To format a number with commas in Python 3.6 and above use f-strings as shown below. # PYTHON 3.6 AND ABOVE # format a number with commas using f-strings myNumber = 1000000.11 print(f"{myNumber:,}") The f-string replaces myNumber with the actual value. The number is printed with comma-separated digits. 1,000,000.11

format number with commas (older Python3)

For older versions of Python 3 (below 3.6) f-strings are not available, use the format() function instead. # format a number with commas using the format() function myNumber = 1000000.11 print(format(myNumber, ",")) The format() function is used to format the number with commas. The result is returned and printed. 1,000,000.11

define own function

To format numbers with commas, define your own function as shown below. # define your own function to format numbers with commas def add_commas(number): return ("{:,}".format(number)) myNumber = 1000000.11 # call the defined function formattedNumber = add_commas(myNumber) # print the formatted number print(formattedNumber) The add_commas function is defined format the number with commas. Then the add_commas() function is called and finally the result is printed. 1,000,000.11

format number with commas and round

The format() function allows us to format a number with commas and round the result at the same time. The decimal places can be specified as shown below. # format number with commas and round myNumber = 1000000.11 # round to 1 decimal places rounded = "{:,.1f}".format(myNumber) # round to integer myInteger = "{:,.0f}".format(myNumber) # print values print(rounded) print(myInteger) The first value is formatted with commas and rounded to 1 decimal place. The second value is formatted with commas and rounded to an integer. 1,000,000.1 1,000,000

                
        

Summary


Click to jump to section