diff options
author | Fred Drake <fdrake@acm.org> | 2000-11-17 19:44:14 (GMT) |
---|---|---|
committer | Fred Drake <fdrake@acm.org> | 2000-11-17 19:44:14 (GMT) |
commit | 17383b9ad77071b2a15cf3286353281e04e139d2 (patch) | |
tree | 8176cc8ee9dd9d933643a8a6c0a1a9ed9178951c | |
parent | 977fe96a055ab9867d1e61ff5ad7799e55fdfbd2 (diff) | |
download | cpython-17383b9ad77071b2a15cf3286353281e04e139d2.zip cpython-17383b9ad77071b2a15cf3286353281e04e139d2.tar.gz cpython-17383b9ad77071b2a15cf3286353281e04e139d2.tar.bz2 |
Added information about the %r string formatting conversion. Added note
about the interpretation of radix 0 for int(), and added description of
the optional radix argument for long(). Based on comments from Reuben
Sumner <rasumner@users.sourceforge.net>.
This closes bug #121672.
-rw-r--r-- | Doc/lib/libfuncs.tex | 12 | ||||
-rw-r--r-- | Doc/lib/libstdtypes.tex | 10 |
2 files changed, 14 insertions, 8 deletions
diff --git a/Doc/lib/libfuncs.tex b/Doc/lib/libfuncs.tex index cb5acde..7ffc2ea 100644 --- a/Doc/lib/libfuncs.tex +++ b/Doc/lib/libfuncs.tex @@ -331,8 +331,10 @@ module from which it is called). representable as a Python integer, possibly embedded in whitespace; this behaves identical to \code{string.atoi(\var{x}\optional{, \var{radix}})}. The \var{radix} parameter gives the base for the - conversion and may be any integer in the range [2, 36]. If - \var{radix} is specified and \var{x} is not a string, + conversion and may be any integer in the range [2, 36], or zero. If + \var{radix} is zero, the proper radix is guessed based on the + contents of string; the interpretation is the same as for integer + literals. If \var{radix} is specified and \var{x} is not a string, \exception{TypeError} is raised. Otherwise, the argument may be a plain or long integer or a floating point number. Conversion of floating @@ -392,11 +394,13 @@ modified; changes may not affect the values of local variables used by the interpreter. \end{funcdesc} -\begin{funcdesc}{long}{x} +\begin{funcdesc}{long}{x\optional{, radix}} Convert a string or number to a long integer. If the argument is a string, it must contain a possibly signed decimal number of arbitrary size, possibly embedded in whitespace; - this behaves identical to \code{string.atol(\var{x})}. + this behaves identical to \code{string.atol(\var{x})}. The + \var{radix} argument is interpreted in the same way as for + \function{int()}, and may only be given when \var{x} is a string. Otherwise, the argument may be a plain or long integer or a floating point number, and a long integer with the same value is returned. Conversion of floating diff --git a/Doc/lib/libstdtypes.tex b/Doc/lib/libstdtypes.tex index 003a454..91dd675 100644 --- a/Doc/lib/libstdtypes.tex +++ b/Doc/lib/libstdtypes.tex @@ -601,15 +601,17 @@ The right argument should be a tuple with one item for each argument required by the format string; if the string requires a single argument, the right argument may also be a single non-tuple object.\footnote{A tuple object in this case should be a singleton. -} The following format characters are understood: -\code{\%}, \code{c}, \code{s}, \code{i}, \code{d}, \code{u}, \code{o}, -\code{x}, \code{X}, \code{e}, \code{E}, \code{f}, \code{g}, \code{G}. +} The following format characters are understood: \code{\%}, +\code{c}, \code{r}, \code{s}, \code{i}, \code{d}, \code{u}, \code{o}, +\code{x}, \code{X}, \code{e}, \code{E}, \code{f}, \code{g}, \code{G}. Width and precision may be a \code{*} to specify that an integer argument specifies the actual width or precision. The flag characters \code{-}, \code{+}, blank, \code{\#} and \code{0} are understood. The size specifiers \code{h}, \code{l} or \code{L} may be present but are ignored. The \code{\%s} conversion takes any Python object and -converts it to a string using \code{str()} before formatting it. The +converts it to a string using \code{str()} before formatting it; the +\code{\%r} conversion is similar but applies the \function{repr()} +function instead. The ANSI features \code{\%p} and \code{\%n} are not supported. Since Python strings have an explicit length, \code{\%s} conversions don't assume that \code{'\e0'} is the end of the string. |