i den här artikeln kommer jag att förklara användningen avrandom
– modulen i Python. Som namnet antyder låter det dig generera slumptal.
denna slumpmässiga modul innehåller pseudo-slumptalsgeneratorer för olika distributioner.
funktionen random()
är en av dem, den genererar ett tal mellan 0 och 1.
men det finns andra som funktionerna randint(min,max)
och randrange(max)
.
relaterad kurs: Komplett Python programmeringskurs & övningar
introduktion
Låt oss börja med den absoluta grundläggande slumptalsgenerationen. Funktionen random.random()
.
funktionenrandom()
returnerar nästa slumpmässiga flottör i intervallet .
för att användarandom()
– funktionen, Ringrandom()
– metoden för att generera ett verkligt (float) nummer mellan 0 och 1.
import random
x = random.random()
print(x)
detta matar ut ett tal mellan 0 och 1. För de flesta appar behöver du slumpmässiga heltal istället för siffror mellan 0 och 1.
generera slumptal
funktionen randint()
genererar slumpmässiga heltal för dig. Om du ringer funktionen returnerar den ett slumpmässigt heltal N
så att a <= N <= b
.
randint()
metod för att generera ett heltal (heltal). Du kan använda randint(0,50)
för att generera ett slumptal mellan 0 och 50.
import random
x = random.randint(0,50)
print(x)
To generate random integers between 0 and 9, you can use the function randrange(min,max)
.
from random import randrange
print(randrange(10))
You can use randint(min,max)
instead:
import random
print(random.randint(0,9))
Change the parameters of randint() to generate a number between 1 and 10.
import random
x = random.randint(1,10)
print(x)
relaterad kurs: komplett Python programmeringskurs & övningar
lista över slumpmässiga nummer
om du vill skapa en lista med slumptal kan du göra det genom att använda en för-slinga.
för att generera en lista med 100 slumptal:
import random
mylist =
for i in range(0,100):
x = random.randint(1,10)
mylist.append(x)
print(mylist)
men detta kan göras på ett mycket mer kompakt sätt i Python, med en liner.
funktionen som ska användas är sample()
som blandar inmatningslistan, i exemplet nedan blandar den den skapade listan range(1,101)
.
det vill sägarange(1,101)
skapar en lista med siffror 1 till 100.
>>> list(range(1,101))
då funktionen sample()
blandar listan i slumpmässig ordning.
>>> import random
>>> x = random.sample(range(1,101), 100)
välja slumpmässiga objekt från en lista
Du kan använda metoden sample()
för att sätta listan i en slumpmässig ordning. Men du kan också använda den få slumpmässiga objekt från en lista.
Om du vill ha 3 slumpmässiga objekt från listan lägger du till3
som andra parameter försample(list)
– metoden.
import random
mylist =
x = random.sample(mylist,3)
print(x)
om du vill välja ett slumpmässigt objekt kan du använda metoden choice(list)
. Men detta returnerar bara ett element.
>>> import random
>>> x = list(range(1,101))
>>> random.choice(x)
8
>>> random.choice(x)
11
>>>
Du kan använda metoden shuffle(list)
för att blanda listordningen och sedan använda det första indexet som slumpmässigt nummer.
>>> import random
>>> x = list(range(1,101))
>>> random.shuffle(x)
det rekommenderade sättet att göra detta är att använda metoden choice()
, men alla dessa fungerar.
Om du är en Python nybörjare, rekommenderar jag starkt den här boken.
ladda ner övningar