Currency formatting in Python

RailsSon picture RailsSon · Nov 26, 2008 · Viewed 194k times · Source

I am looking to format a number like 188518982.18 to £188,518,982.18 using Python.

How can I do this?

Answer

S.Lott picture S.Lott · Nov 26, 2008

See the locale module.

This does currency (and date) formatting.

>>> import locale
>>> locale.setlocale( locale.LC_ALL, '' )
'English_United States.1252'
>>> locale.currency( 188518982.18 )
'$188518982.18'
>>> locale.currency( 188518982.18, grouping=True )
'$188,518,982.18'