random
– pseudo-random numbers and choices¶
The random
module is a strict subset of the CPython random
module. So, code written in CircuitPython will work in CPython but not
necessarily the other way around.
Like its CPython cousin, CircuitPython’s random seeds itself on first use with a true random from os.urandom() when available or the uptime otherwise. Once seeded, it will be deterministic, which is why its bad for cryptography.
Warning
Numbers from this module are not cryptographically strong! Use
bytes from os.urandom
directly for true randomness.
-
random.
_T
¶
-
random.
seed
(seed: int) → None¶ Sets the starting seed of the random number generation. Further calls to
random
will return deterministic results afterwards.
-
random.
randrange
(stop: Tuple[int, int, int]) → int¶ Returns a randomly selected integer from
range(start, stop, step)
.
-
random.
randint
(a: int, b: int) → int¶ Returns a randomly selected integer between a and b inclusive. Equivalent to
randrange(a, b + 1, 1)
-
random.
choice
(seq: Sequence[_T]) → _T¶ Returns a randomly selected element from the given sequence. Raises IndexError when the sequence is empty.