def seed(a=None, version=2) -> None
seed()
du module random
de Python initialise le générateur de nombres aléatoires
avec une valeur de départ (la graine), permettant de reproduire une séquence de nombres aléatoires.
3.2
ajoute la version 2 qui utilise tous les bits de la graine (quel que soit le type de cette dernière).3.11
étend la liste des types supportés (int|float|str|bytes|bytearray|NoneType
) pour la graine.Initialize internal state from a seed. The only supported seed types are None, int, float, str, bytes, and bytearray. None or no argument seeds from current time or from an operating system specific randomness source if available. If *a* is an int, all bits are used. For version 2 (the default), all of the bits are used if *a* is a str, bytes, or bytearray. For version 1 (provided for reproducing random sequences from older versions of Python), the algorithm for str and bytes generates a narrower range of seeds.
Paramètre | Description |
---|---|
a : int|float|str|bytes|bytearray|NoneType |
La valeur de la graine, facultative. Si non fournie, le générateur utilise l'horodatage actuel ou le système d'exploitation pour obtenir une graine. |
version : int = 2 |
La version de l'algorithme à utiliser. La valeur par défaut est 2. Pour utiliser l'ancienne version (Python 2.3), utilisez la valeur 1. |
Cette méthode ne renvoie aucune valeur.
TypeError :Une exception de ce type sera déclenchée si l'un des paramètres n'est pas d'un type attendu.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
#!/usr/bin/python import random # Pas de graine (seed) : on est basé sur le temps système random_value1 = random.random() random_value2 = random.random() random_value3 = random.random() # Graine initialisée à 42 random.seed(42) random_value1_bis = random.random() random_value2_bis = random.random() random_value3_bis = random.random() # Graine, de nouveau, initialisée à 42 => on recommence la séquence random.seed(42) random_value1_tri = random.random() random_value2_tri = random.random() random_value3_tri = random.random() print("Première séquence :", random_value1, random_value2, random_value3) print("Deuxième séquence :", random_value1_bis, random_value2_bis, random_value3_bis) print("Troisème séquence :", random_value1_tri, random_value2_tri, random_value3_tri) |
Et voici les résultats produits par cet exemple.
$> python sample.py Première séquence : 0.04809109929788591 0.718132472277087 0.3420586189209237 Deuxième séquence : 0.6394267984578837 0.025010755222666936 0.27502931836911926 Troisème séquence : 0.6394267984578837 0.025010755222666936 0.27502931836911926 $>
Améliorations / Corrections
Vous avez des améliorations (ou des corrections) à proposer pour ce document : je vous remerçie par avance de m'en faire part, cela m'aide à améliorer le site.
Emplacement :
Description des améliorations :