[Python-checkins] Document differences between random.choices() and random.choice(). (GH-11703)

Raymond Hettinger webhook-mailer at python.org
Wed Jan 30 16:30:25 EST 2019

commit: 40ebe948e97b47fc84c8f527910063286a174b25
branch: master
author: Raymond Hettinger <rhettinger at users.noreply.github.com>
committer: GitHub <noreply at github.com>
date: 2019-01-30T13:30:20-08:00

Document differences between random.choices() and random.choice(). (GH-11703)

M Doc/library/random.rst

diff --git a/Doc/library/random.rst b/Doc/library/random.rst
index 4f251574a327..a543ff016a62 100644
--- a/Doc/library/random.rst
+++ b/Doc/library/random.rst
@@ -162,6 +162,13 @@ Functions for sequences
    with the :class:`float` values returned by :func:`random` (that includes
    integers, floats, and fractions but excludes decimals).
+   For a given seed, the :func:`choices` function with equal weighting
+   typically produces a different sequence than repeated calls to
+   :func:`choice`.  The algorithm used by :func:`choices` uses floating
+   point arithmetic for internal consistency and speed.  The algorithm used
+   by :func:`choice` defaults to integer arithmetic with repeated selections
+   to avoid small biases from round-off error.
    .. versionadded:: 3.6

More information about the Python-checkins mailing list