Maison > Article > développement back-end > Pourquoi est-ce que j'obtiens différents nombres aléatoires en utilisant la même graine ?
J'utilise le générateur de nombres aléatoires numpy avec le mwe suivant :
import numpy as np np.random.seed(40) print(np.random.randint(-3, 4)) rng = np.random.default_rng(seed=40) print(rng.integers(-3, 4))
Sortie :
3 0
Pourquoi le résultat est-il différent ?
numpy.random.randint
和 numpy.random.seed
使用旧的随机 API,其底层实现完全不同。 numpy.random.default_rng
Créez un objet Générateur, c'est la nouvelle API.
Ces deux API sont en fait deux bibliothèques RNG complètement indépendantes qui se trouvent dans le même espace de noms. Même avec la même graine, le résultat ne correspondra pas.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!