Syntaxe :
randint (début, fin)
Paramètres :
(start, end): Les deux doivent être des valeurs de type entier.
Renvoi :
Un entier aléatoire dans la plage donnée en tant que paramètres.
Erreurs et exceptions :
ValueError : renvoie une ValueError lorsque des valeurs à virgule flottante ‚Äã‚Äãsont transmises en tant que paramètres. TypeError : renvoie une TypeError lorsque des valeurs autres que des valeurs numériques sont transmises en tant que paramètres.
Code # 1 :
# programme Python3 expliquant comment il fonctionne
# fonction randint ()
# importe un module aléatoire
importer
aléatoire
# Génère un nombre aléatoire entre
# plage positive spécifiée
r1
=
random.randint (
0
,
10
)
imprimer
(
"Un nombre aléatoire entre 0 et 10 est% s"
%
(r1))
# Génère un nombre aléatoire entre
# deux plages négatives spécifiées
r2
=
random.randint (
-
10
,
-
1
)
print
(
"Nombre aléatoire entre -10 et -1 est %d"
%
(r2))
# Génère un nombre aléatoire entre
# plages positives et négatives
r3
=
random.randint (
-
5
,
5
)
print
(
"Le nombre aléatoire entre -5 et 5 est% d"
%
(r3))
Sortie :
Le nombre aléatoire entre 0 et 10 est 5 Le nombre aléatoire entre -10 et -1 est -7 Le nombre aléatoire entre -5 et 5 est 2
Code # 2 : Programme affichant ValueError.
# importe un module aléatoire
import
aléatoire
' ' ' Si nous passons les valeurs à virgule flottante ‚Äã‚Äãas
paramètres dans la fonction randint () ' ' '
r1
=
aléatoire. randint (
1.23
,
9.34
)
imprimer
(r1)
Sortie :
Traçage (dernier appel le plus récent) : Fichier "/home/f813370b9ea61dd5d55d7dadc8ed5171.py", ligne 6, dans r1 = random.randint (1.23, 9.34) Fichier "/usr/lib/python3.5/random.py", ligne 218, dans randint return self.randrange (a, b + 1) File" /usr/lib/python3. 5/random.py ", ligne 182, dans randrange raise ValueError ("non-integer arg 1 for randrange ()") ValueError : non-integer arg 1 for randrange ()
Code # 3 : Programme affichant TypeError.
# importe aléatoirement
import
aléatoire
' ' ' Si nous transmettons des littéraux de chaîne ou de caractère en tant que paramètres
dans la fonction randint () ' ' '
r2
=
aléatoire. randint (
`a`
,
`z`
)
print
(r2)
Sortie :
Traçage (dernier appel le plus récent) : Fichier "/home/fb805b21fea0e29c6a65f62b99998953.py", ligne 5, in r2 = random.randint (`a`, `z`) File" /usr/lib/python3.5/random.py ", ligne 218, in randint return self.randrange (a, b + 1) TypeError : Impossible de convertir l`objet `int` en str implicitement
Applications :
La fonction randint () peut être utilisée pour simuler une situation de tirage au sort.
Supposons que l`utilisateur participe à un concours de tirage au sort. L`utilisateur a trois chances de deviner le nombre de 1 à 10. S`il a bien deviné, l`utilisateur gagne, sinon il perd.
# import de la fonction randint
# d`un module aléatoire
de
random
import
randint
# Une fonction qui en génère une nouvelle
# un nombre aléatoire à chaque exécution
def
générateur ():
return
randint (
1
,
10
# La fonction accepte les entrées de l`utilisateur et renvoie
# vrai ou faux selon que
# l`utilisateur a gagné un tirage au sort !
def
rand_guess ():
# appelle le générateur (), qui renvoie
# entier aléatoire de 1 à 10
random_number
=
générateur ()
# quantification
# suppose que l`utilisateur obtient
guess_left
=
3
# Définition d`une variable d`indicateur sur vérifier
# condition gagnante pour l`utilisateur
flag
=
0
# nombre de boucles
# l`utilisateur obtient des chances
tandis que
devine _left > ;
0
:
# Accepter entrée utilisateur
deviner
=
int
(
entrée
(
"Choisissez votre numéro pour"
"participez au tirage au sort"
))
# vérifie si l`hypothèse de l`utilisateur est correcte
# correspond à la condition de gain générée
if
devinez
=
=
random_number :
# mettre le drapeau à 1 si l`utilisateur le devine
# correct et la boucle se termine
flag
=
1
break
else
:
# Si le choix de l`utilisateur ne correspond pas
# win-condition, alors il est imprimé
print
(
"Wrong Guess !!"
)
# Diminuer la quantité
# devinettes laissées par 1
guess_left
-
=
1
# Si la condition gagnante est remplie
# la fonction rand_guess renvoie Vrai
si
flag
est
1
:
return
Vrai
# Sinon la fonction renvoie False
else
:
renvoie
Faux
# Code du pilote
if
__ nom__
=
=
`__main__`
:
si
rand_guess ()
est
Vrai
:
imprimer
(
" Félicitations !! Vous gagnez. "
)
autre
:
imprimer
(
"Désolé, vous avez perdu !"
)
Sortie :
Choisissez votre numéro pour participer au tirage au sort 8 Wrong Guess !! Choisissez votre numéro pour participer au tirage au sort 9 Wrong Guess !! Choisissez votre numéro pour participer au tirage au sort 0 Congrats !! You Win.