From 17383b9ad77071b2a15cf3286353281e04e139d2 Mon Sep 17 00:00:00 2001 From: Fred Drake Date: Fri, 17 Nov 2000 19:44:14 +0000 Subject: 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 . This closes bug #121672. --- Doc/lib/libfuncs.tex | 12 ++++++++---- 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. -- cgit v0.12