Fonction de départ aléatoire en Python

Abdul Jabbar 4 décembre 2021
Fonction de départ aléatoire en Python

Si vous voulez un nombre aléatoire de résultats inattendus pour les jeux d’argent ou les jeux informatiques, vous devez créer le nombre aléatoire à partir de la méthode intégrée en Python. Il est également utile en cryptographie car il permet de créer des nombres aléatoires que les pirates ou les attaquants ne peuvent pas deviner.

La procédure seed permet de redémarrer le générateur de nombres aléatoires. Le générateur de nombres aléatoires a besoin d’un nombre pour commencer (une valeur de départ), pour pouvoir générer un nombre aléatoire. Cela peut être n’importe quel nombre, mais il s’agit généralement de secondes sur l’horloge d’un système informatique. Par défaut, le générateur de nombres aléatoires utilise l’heure réelle de l’ordinateur. Utilisez la méthode pour personnaliser le numéro de départ du générateur de nombres aléatoires.

Un nombre pseudo-aléatoire génère une tâche en effectuant certaines fonctions sur une valeur. Généralement, cette valeur est le nombre précédent généré par le générateur. De toute façon, la première fois que vous utilisez le générateur, il n’y a pas de valeur précédente.

Remarque : si vous utilisez deux fois la même valeur de départ, vous obtiendrez deux fois le même nombre aléatoire ; nous verrons ce cas dans l’exemple de code ci-dessous.

Lorsque vous appelez cette méthode, ne vous attendez pas à ce qu’il s’agisse d’un nombre unique, car les ordinateurs ne calculent pas toujours des nombres vraiment aléatoires, car cela fonctionne sur un ensemble de règles prédéfinies. Si vous souhaitez ajouter un peu d’aléatoire, vous devez créer des règles pour votre processus ; par exemple, pour créer une équation pour votre processus en expression avec x, ajoutez 600 +x puis soustrayez-la avec 30. Prenons le x (la valeur de départ) comme 40.

  • Ajouter 600 + 40 = 640
  • Soustraire 30 = 614

En suivant le même algorithme, le deuxième nombre aléatoire serait.

  • Ajouter 600 + 30 = 630
  • Soustraire 30 = 600

Cet exemple simple suit un certain modèle spécifié, mais les algorithmes derrière la génération de nombres informatiques sont beaucoup plus difficiles à imiter le hasard bien mieux que je ne peux le faire ici. Mais le processus suit toujours un certain modèle, qui sera répété la prochaine fois que vous entrez 40, ou quel que soit le nombre que vous choisissez dans la graine aléatoire.

Fonction de départ aléatoire en Python

Dans ce bloc de code, nous allons générer un nombre aléatoire entre 0 et 100 et générer 3 fois à des fins de vérification. La première et la deuxième fois, nous donnons la même graine, et la troisième fois, il n’y a pas de graine ou de changement de valeur de graine. Tout d’abord, nous importerons la fonctionnalité aléatoire dans notre code et fournirons la graine en tant que 3, ce qui nous donnera la valeur 31 en tant que nombre aléatoire, puis nous fournirons la même graine, qui nous fournira à nouveau le même nombre car la graine a été même. Mais lorsque nous fournissons une nouvelle graine ou aucune graine, la valeur sera toujours différente.

import random

random.seed(4)
print(random.randint(1, 100))
random.seed(4)
print(random.randint(1, 100))
print(random.randint(1, 100))

Production:

31
31
39

L’utilisation de la fonction random.randint générerait un nombre aléatoire et ne ferait rien d’autre. Si vous souhaitez conserver votre utilisation du même nombre généré aléatoirement, aussi simple que cela, vous êtes censé utiliser la fonction seed.

Auteur: Abdul Jabbar
Abdul Jabbar avatar Abdul Jabbar avatar

Abdul is a software engineer with an architect background and a passion for full-stack web development with eight years of professional experience in analysis, design, development, implementation, performance tuning, and implementation of business applications.

LinkedIn