Créez une "liste" appelée my_randoms de 10 nombres aléatoires compris entre 0 et 100.
Voici ce que j'ai jusqu'à présent:
import random
my_randoms=[]
for i in range (10):
my_randoms.append(random.randrange(1, 101, 1))
print (my_randoms)
Malheureusement, la sortie de Python est la suivante:
[34]
[34, 30]
[34, 30, 75]
[34, 30, 75, 27]
[34, 30, 75, 27, 8]
[34, 30, 75, 27, 8, 58]
[34, 30, 75, 27, 8, 58, 10]
[34, 30, 75, 27, 8, 58, 10, 1]
[34, 30, 75, 27, 8, 58, 10, 1, 59]
[34, 30, 75, 27, 8, 58, 10, 1, 59, 25]
Il génère les 10 chiffres comme je le demande, mais il les génère un à la fois. Qu'est-ce que je fais mal?
Vous pouvez utiliser random.sample
pour générer la liste en un appel:
import random
my_randoms = random.sample(xrange(100), 10)
Cela génère des nombres compris entre 0 et 99. Si vous voulez 1 à 100, vous pouvez utiliser ceci (merci à @martineau pour avoir signalé ma solution compliquée):
my_randoms = random.sample(xrange(1, 101), 10)
import random
my_randoms = [random.randrange(1, 101, 1) for _ in range(10)]
Corrige l'indentation de l'instruction print
import random
my_randoms=[]
for i in range (10):
my_randoms.append(random.randrange(1,101,1))
print (my_randoms)
Ici, j’utilise la méthode sample
pour générer 10 nombres aléatoires compris entre 0 et 100.
Remarque : J'utilise la fonction Python La fonction range
de 3 (et non pas xrange
).
import random
print(random.sample(range(0, 100), 10))
La sortie est placée dans une liste :
[11, 72, 64, 65, 16, 94, 29, 79, 76, 27]
C'est très tard, mais au cas où quelqu'un trouve cela utile.
Vous pouvez utiliser la compréhension de liste.
Rand = [random.randint(0, 100) for x in range(1, 11)]
print(Rand)
Sortie:
[974, 440, 305, 102, 822, 128, 205, 362, 948, 751]
À votre santé!
import random
a=[]
n=int(input("Enter number of elements:"))
for j in range(n):
a.append(random.randint(1,20))
print('Randomised list is: ',a)