What is CPython's RNG seed set to for the random module?

Viewed 30

You can set Python's random number generator by calling random.seed(theSeed). The subsequent random numbers generated from that seed are predictable. The following interactive shell example shows the same random numbers being generated from the integer seed 42 on Python 3.10.2:

>>> import random
>>> random.seed(42)
>>> [random.randint(0, 9) for i in range(20)]
[1, 0, 4, 3, 3, 2, 1, 8, 1, 9, 6, 0, 0, 1, 3, 3, 8, 9, 0, 8]
>>> random.seed(42)
>>> [random.randint(0, 9) for i in range(20)]
[1, 0, 4, 3, 3, 2, 1, 8, 1, 9, 6, 0, 0, 1, 3, 3, 8, 9, 0, 8]

But you don't have to call random.seed() before you start obtaining random numbers. What is the default seed used by CPython (the Python interpreter from python.org)?

1 Answers
Related