éviter les répétions dans random

Résolu
titi66 -  
 titi66 -
Bonjour,
je programme en python 3.8,
et quand j'utilise random pour générer 5 nombre à la suite.

exemple :
nombre1 = random.randint(1,20)
nombre2 = random.randint(1,20)
nombre3 = random.randint(1,20)
nombre4 = random.randint(1,20)
nombre5 = random.randint(1,20)
print(nombre1,nombre2,nombre3,nombre4,nombre5)

résultat :
2 5 18 10 18


Je voudrai que ces 5 nombres soit différents.
Si je suis l'exemple je ne veut pas que 18 apparaisse 2 fois.
comment faire ?
A voir également:

3 réponses

yg_be Messages postés 24281 Date d'inscription   Statut Contributeur Dernière intervention   Ambassadeur 1 585
 
bonjour,
peut-être ainsi:
print (random.sample(range(1,21),5))
1
titi66
 
Merci du conseil yg_be !
J'ai résolue mon problème !
0
NHenry Messages postés 15479 Statut Modérateur 366
 
Fais une liste des valeurs possibles, puis tu prends un random index de la liste et tu retire l'élément sélectionné.
0
Utilisateur anonyme
 
Bonjour

autre option, toujours avec une liste, tu la "mélanges" en échangent n fois 2 random index.
Une fois bien mélangées, tu prends les éléments dans l'ordre où ils sont
0