From c611db4942a07c81f54e6584615bbddc51034a77 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?St=C3=A9phane=20Wirtel?= Date: Tue, 19 Feb 2019 10:26:02 +0100 Subject: [2.7] bpo-35126: Fix a mistake in FAQ about converting number to string (GH-11911) https://bugs.python.org/issue35126 --- Doc/faq/programming.rst | 24 +++++++++++++++++++--- .../2019-02-18-10-01-07.bpo-35126.LWwl8X.rst | 2 ++ 2 files changed, 23 insertions(+), 3 deletions(-) create mode 100644 Misc/NEWS.d/next/Documentation/2019-02-18-10-01-07.bpo-35126.LWwl8X.rst diff --git a/Doc/faq/programming.rst b/Doc/faq/programming.rst index 9190e1a..62b34b6 100644 --- a/Doc/faq/programming.rst +++ b/Doc/faq/programming.rst @@ -997,9 +997,27 @@ To convert, e.g., the number 144 to the string '144', use the built-in type constructor :func:`str`. If you want a hexadecimal or octal representation, use the built-in functions :func:`hex` or :func:`oct`. For fancy formatting, see the :ref:`formatstrings` section, e.g. ``"{:04d}".format(144)`` yields -``'0144'`` and ``"{:.3f}".format(1/3)`` yields ``'0.333'``. You may also use -:ref:`the % operator ` on strings. See the library reference -manual for details. +``'0144'`` and ``"{:.3f}".format(1.0/3.0)`` yields ``'0.333'``. In Python 2, the +division (/) operator returns the floor of the mathematical result of division +if the arguments are ints or longs, but it returns a reasonable approximation of +the division result if the arguments are floats or complex:: + + >>> print('{:.3f}'.format(1/3)) + 0.000 + >>> print('{:.3f}'.format(1.0/3)) + 0.333 + +In Python 3, the default behaviour of the division operator (see :pep:`238`) has +been changed but you can have the same behaviour in Python 2 if you import +``division`` from :mod:`__future__`:: + + >>> from __future__ import division + >>> print('{:.3f}'.format(1/3)) + 0.333 + + +You may also use :ref:`the % operator ` on strings. See the +library reference manual for details. How do I modify a string in place? diff --git a/Misc/NEWS.d/next/Documentation/2019-02-18-10-01-07.bpo-35126.LWwl8X.rst b/Misc/NEWS.d/next/Documentation/2019-02-18-10-01-07.bpo-35126.LWwl8X.rst new file mode 100644 index 0000000..8ad392e --- /dev/null +++ b/Misc/NEWS.d/next/Documentation/2019-02-18-10-01-07.bpo-35126.LWwl8X.rst @@ -0,0 +1,2 @@ +Improve the examples in the "How do I convert a number to string?" question +of the "Programming" section of the FAQ. Contributed by Stéphane Wirtel. -- cgit v0.12