bpo-38881: choices() raises ValueError when all weights are zero (GH-17362)

This commit is contained in:
Raymond Hettinger 2019-11-23 02:22:13 -08:00 committed by GitHub
parent 84b1ff6560
commit 041d8b48a2
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
4 changed files with 15 additions and 3 deletions

View file

@ -165,8 +165,9 @@ Functions for sequences
The *weights* or *cum_weights* can use any numeric type that interoperates
with the :class:`float` values returned by :func:`random` (that includes
integers, floats, and fractions but excludes decimals). Weights are
assumed to be non-negative.
integers, floats, and fractions but excludes decimals). Behavior is
undefined if any weight is negative. A :exc:`ValueError` is raised if all
weights are zero.
For a given seed, the :func:`choices` function with equal weighting
typically produces a different sequence than repeated calls to
@ -177,6 +178,9 @@ Functions for sequences
.. versionadded:: 3.6
.. versionchanged:: 3.9
Raises a :exc:`ValueError` if all weights are zero.
.. function:: shuffle(x[, random])