Comment générer des nombres aléatoires en Python – La bibliothèque aléatoire
🖥️
Dans ce tutoriel, nous allons apprendre à générer des nombres aléatoires à l’aide du module Aléatoire de la bibliothèque standard Python.
Tutoriel précédent : Comment créer, importer et utiliser des modules
Voir aussi : Comment entrer sur le marché du travail Python
Nombres aléatoires – Pourquoi l’utiliser ?
L’utilité de générer des nombres aléatoires est énorme.
Un exemple très clair et largement utilisé est celui des jeux.
Lancer les dés, choisir des ennemis et des personnages au hasard, localiser sur des cartes, certains jeux « dessinent » des choses (skins, gemmes, puissance, équipement, etc.), le tout au moyen de nombres aléatoires.
Avez-vous déjà perdu votre mot de passe ou enregistré que vous aviez besoin de recevoir un code numérique ou alphanumérique (comme 23&6342h) dans votre e-mail ou par SMS ? Oui, ce code est généré aléatoirement.
Souvent, pour faire des simulations, principalement scientifiques et de nature académique, il est nécessaire d’utiliser une quantité énorme de nombres aléatoires.
Si vous avez déjà suivi un cours de probabilités et statistiques à l’université, vous savez que les nombres aléatoires sont beaucoup utilisés.
Ils sont l’un des concepts les plus importants dans le monde informatique, et nous allons maintenant apprendre à utiliser la bibliothèque Aléatoire (module aléatoire) en Python.
Générer un entier aléatoire : la fonction randint
Tout d’abord, apprenons à générer aléatoirement un nombre entier.
Pour cela, utilisons la fonction randint, de la bibliothèque standard Python, le Aléatoire. Autrement dit, au tout début, il faut importer ce module :
importer au hasard
Maintenant, utilisons le randint pour générer un nombre.
Cette fonction a deux paramètres, appelons-la début et finir:
random.randint(début, fin)
Cette fonction renvoie un entier de ‘début’ à ‘fin’ (les y compris).
Par example:
- randint(1,10) : peut générer n’importe quel nombre de 1 à 10
- randint(1,1000): n’importe quel nombre 1,2, 3, …, 100 peut résulter
Exemple d’utilisation de la fonction randint()
Créez un programme Python qui simule le résultat d’une donnée, c’est-à-dire qu’il génère des nombres aléatoires de 1 à 6, autant de fois que l’utilisateur le souhaite.
Comme expliqué, la première chose à faire est d’importer la bibliothèque. Aléatoire, norme Python. Ensuite, utilisez simplement le fonction randint avec 1 et 6 comme arguments, voyez à quoi cela ressemble :
import random continue=1 tandis que continue : print(« Nombre aléatoire généré : », random.randint(1,6)) continue=int(input(« Régénérer ?n1.Ouin0.Nonn »)
Mieux définir la plage : randrange()
La fonction randrange elle est très similaire à la fonction range (lisez à nouveau ce tutoriel pour un rappel), exactement de la même manière d’utiliser les paramètres, sauf qu’elle ne retournera qu’une seule valeur.random.randrange(x) – va générer un nombre aléatoire de 0 à x-1
Par example:
random.randrange(5) – Peut retourner : 0, 1, 2, 3 ou 4random.randrange(x,y) – va générer un nombre de x à y-1
Par example:
random.randrange(1,5) – Peut sortir : 1, 2, 3 ou 4
random.randrange(x,y,z) – Peut générer à partir de X jusqu’à y-1, mais au lieu de 1 en 1, il « saute » de z dans z, C’est, z est le saut.
Par example:
random.randrange(0,10,2) – Génèrera l’un des nombres suivants : 0, 2, 4, 6 ou 8 (c’est-à-dire toutes les paires de 0 à 8).
Pour générer tous les nombres multiples de 3 inférieurs à 100, nous faisons :
random.randrange(0, 101, 3) : 3, 6, 9, …, 99
Générer un nombre aléatoire décimal : aléatoire()
Dans les exemples précédents, les fonctions génèrent et reçoivent uniquement des nombres entiers, c’est-à-dire qu’elles ne sont pas utilisées pour travailler avec des nombres décimaux.
Mais que se passe-t-il si nous voulons un nombre brisé aléatoire?
On utilise alors la fonction Aléatoire(), il ne prend aucun argument.
Utilisé, puis vous renvoie la décimale de 0,0 à 1,0
Faites juste : aléatoire.aléatoire() et aura son numéro cassé aléatoire.
Définir l’aléatoire flottant : fonction uniform()
Il existe une fonction supplémentaire pour générer des valeurs flottantes aléatoirement, via la fonction uniforme().
Cette fonction prend deux arguments, une valeur de début et une valeur de fin, ils peuvent être des valeurs flotter et vous en renvoie un flotter Aléatoire.
Par exemple, disons que vous êtes enseignant, que vous devez remettre la note des 200 élèves et que vous êtes totalement sorti du sac.
Alors vous décidez que vous allez donner des notes aléatoires, de 5,0 à 10,0
Utilisez simplement la fonction uniforme:
random.uniform(5.0 , 10.0)
D’accord, elle te rendra un mot rapidement 😀
Il est maintenant temps de profiter de vos vacances.
Si vous avez peur qu’un élève se plaigne, dites simplement « écoute, je peux même réviser ton test, mais si je trouve plus d’erreurs, je baisserai ta note).
Exercice proposé
Créez un script Python qui génère 6 nombres aléatoires pour Mega-Sena (dans ce jeu, vous pouvez choisir des dizaines de 1 à 60). Impossible de répéter dix.
Laissez votre solution dans le commentaire.
N’oubliez pas de partager l’article avec vos amis !