Issue #3067: Enhance the documentation and docstring of locale.setlocale()

This commit is contained in:
Petri Lehtinen 2011-11-05 10:18:50 +02:00
parent 49aa72ed4c
commit 416ecffcc4
3 changed files with 16 additions and 12 deletions

View File

@ -23,19 +23,19 @@ The :mod:`locale` module defines the following exception and functions:
.. exception:: Error
Exception raised when :func:`setlocale` fails.
Exception raised when the locale passed to :func:`setlocale` is not
recognized.
.. function:: setlocale(category[, locale])
If *locale* is specified, it may be a string, a tuple of the form ``(language
code, encoding)``, or ``None``. If it is a tuple, it is converted to a string
using the locale aliasing engine. If *locale* is given and not ``None``,
:func:`setlocale` modifies the locale setting for the *category*. The available
categories are listed in the data description below. The value is the name of a
locale. An empty string specifies the user's default settings. If the
modification of the locale fails, the exception :exc:`Error` is raised. If
successful, the new locale setting is returned.
If *locale* is given and not ``None``, :func:`setlocale` modifies the locale
setting for the *category*. The available categories are listed in the data
description below. *locale* may be a string, or an iterable of two strings
(language code and encoding). If it's an iterable, it's converted to a locale
name using the locale aliasing engine. An empty string specifies the user's
default settings. If the modification of the locale fails, the exception
:exc:`Error` is raised. If successful, the new locale setting is returned.
If *locale* is omitted or ``None``, the current setting for *category* is
returned.
@ -51,7 +51,7 @@ The :mod:`locale` module defines the following exception and functions:
changed thereafter, using multithreading should not cause problems.
.. versionchanged:: 2.0
Added support for tuple values of the *locale* parameter.
Added support for iterable values of the *locale* parameter.
.. function:: localeconv()

View File

@ -524,9 +524,10 @@ def getlocale(category=LC_CTYPE):
def setlocale(category, locale=None):
""" Set the locale for the given category. The locale can be
a string, a locale tuple (language code, encoding), or None.
a string, an iterable of two strings (language code and encoding),
or None.
Locale tuples are converted to strings the locale aliasing
Iterables are converted to strings using the locale aliasing
engine. Locale strings are passed directly to the C lib.
category may be given as one of the LC_* values.

View File

@ -74,6 +74,9 @@ Core and Builtins
Library
-------
- Issue #3067: Enhance the documentation and docstring of
locale.setlocale().
- Issue #13254: Fix Maildir initialization so that maildir contents
are read correctly.