pythonformattingcurrency

Currency formatting in Python


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

How can I do this?


Solution

  • 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'