module documentation

Locale dependent formatting of lists.

The default locale for the functions in this module is determined by the following environment variables, in that order:

  • LC_ALL, and
  • LANG
Unknown Field: copyright
  1. 2015-2021 by the Babel Team.
Unknown Field: license
BSD, see LICENSE for more details.
Function format​_list Format the items in lst as a list.
Constant DEFAULT​_LOCALE Undocumented
def format_list(lst, style='standard', locale=DEFAULT_LOCALE):

Format the items in lst as a list.

>>> format_list(['apples', 'oranges', 'pears'], locale='en')
u'apples, oranges, and pears'
>>> format_list(['apples', 'oranges', 'pears'], locale='zh')
>>> format_list(['omena', 'peruna', 'aplari'], style='or', locale='fi')
u'omena, peruna tai aplari'

These styles are defined, but not all are necessarily available in all locales. The following text is verbatim from the Unicode TR35-49 spec [1].

  • standard: A typical 'and' list for arbitrary placeholders. eg. "January, February, and March"
  • standard-short: A short version of a 'and' list, suitable for use with short or abbreviated placeholder values. eg. "Jan., Feb., and Mar."
  • or: A typical 'or' list for arbitrary placeholders. eg. "January, February, or March"
  • or-short: A short version of an 'or' list. eg. "Jan., Feb., or Mar."
  • unit: A list suitable for wide units. eg. "3 feet, 7 inches"
  • unit-short: A list suitable for short units eg. "3 ft, 7 in"
  • unit-narrow: A list suitable for narrow units, where space on the screen is very limited. eg. "3′ 7″"


lsta sequence of items to format in to a list
stylethe style to format the list with. See above for description.
localethe locale