random — génération de nombres aléatoires¶
Ce module implémente un générateur de nombres pseudo-aléatoires (PRNG). Le PRNG est un LCG de style Yasmarang sur 32 bits ; lors du premier import, il tire une graine de 32 bits depuis la même source matérielle que celle utilisée par os.urandom(), et chaque nombre suivant est une fonction déterministe de cette graine.
Avertissement
La sortie n’est pas cryptographiquement sûre – l’algorithme est prévisible à partir d’une courte séquence de sortie, et la graine initiale ne porte que 32 bits d’entropie. Pour du matériel de clé, des jetons de session, des sels de mots de passe ou tout autre usage sensible à la sécurité, appelez plutôt os.urandom().
Note
La notation suivante est utilisée pour les intervalles :
() sont des crochets d’intervalle ouvert et n’incluent pas leurs bornes. Par exemple, (0, 1) signifie supérieur à 0 et inférieur à 1. En notation ensembliste : (0, 1) = {x | 0 < x < 1}.
[] sont des crochets d’intervalle fermé qui incluent tous leurs points limites. Par exemple, [0, 1] signifie supérieur ou égal à 0 et inférieur ou égal à 1. En notation ensembliste : [0, 1] = {x | 0 <= x <= 1}.
Fonctions pour les entiers¶
- random.randrange(start: int, stop: int | None = None, step: int = 1) int¶
La première forme renvoie un entier aléatoire de la plage [0, stop). La deuxième forme renvoie un entier aléatoire de la plage [start, stop). La troisième forme renvoie un entier aléatoire de la plage [start, stop) par pas de step. Par exemple, appeler
randrange(1, 10, 2)renverra des nombres impairs entre 1 et 9 inclus.
Fonctions pour les flottants¶
Autres fonctions¶
- random.seed(n: int | None = None, /) None¶
Initialise le module générateur de nombres aléatoires avec la graine n, qui doit être un entier. Lorsqu’aucun argument (ou
None) n’est passé, le PRNG est ré-amorcé depuis la même source spécifique au port que celle utilisée paros.urandom().
- random.choice(sequence: Any) Any¶
Choisit et renvoie un élément au hasard parmi sequence (tuple, liste ou tout objet prenant en charge l’opération d’indexation).