https://github.com/python/cpython/commit/610aabfef2f90dc1a274703779615aa5b7fbbb3a
commit: 610aabfef2f90dc1a274703779615aa5b7fbbb3a
branch: main
author: Andrej <[email protected]>
committer: hauntsaninja <[email protected]>
date: 2025-12-19T00:29:35-08:00
summary:

gh-142527: Docs: Clarify that random.seed() discards the sign of an integer 
input (#142483)

If *a* is an integer, the sign of *a* is discarded in the C source code. 
Clarify this behavior to prevent foot guns, where a common use case might 
naively assume that flipping the sign will produce different sequences (e.g. 
for a train/test split of a synthetic data generator in machine learning).

Co-authored-by: Adam Turner <[email protected]>

files:
M Doc/library/random.rst

diff --git a/Doc/library/random.rst b/Doc/library/random.rst
index 4e55e301b89095..6bddf575a809a1 100644
--- a/Doc/library/random.rst
+++ b/Doc/library/random.rst
@@ -78,7 +78,7 @@ Bookkeeping functions
    instead of the system time (see the :func:`os.urandom` function for details
    on availability).
 
-   If *a* is an int, it is used directly.
+   If *a* is an int, its absolute value is used directly.
 
    With version 2 (the default), a :class:`str`, :class:`bytes`, or 
:class:`bytearray`
    object gets converted to an :class:`int` and all of its bits are used.

_______________________________________________
Python-checkins mailing list -- [email protected]
To unsubscribe send an email to [email protected]
https://mail.python.org/mailman3//lists/python-checkins.python.org
Member address: [email protected]

Reply via email to