Pytonen tilfeldig modul gjør det mulig å generere tilfeldige tall. De genererte tallene er en sekvens av pseudo-tilfeldige tall, som er basert på den brukte funksjonen. Det er forskjellige typer funksjoner som brukes i en tilfeldig modul for å generere tilfeldige tall, som f.eks random.random(), random.randint(), random.choice(), random.random.(start, stopp, bredde) , og mange flere.
Her vil vi diskutere randrange() funksjonen til tilfeldig modul. De randrange() funksjonen brukes til å generere et tilfeldig tall mellom det spesifiserte området i parameteren. Den godtar tre parametere: startnummer, stoppnummer og bredde, som brukes til å hoppe over et tall i området.
Syntaks for random.randrange()
random.randrange(start, stop[, width])
De random.randrange() funksjonen returnerer et tilfeldig heltall innenfor det gitte området, dvs. start og stopp. De random.randrange() funksjonen tar tre parametere som inngang start stopp , og bredde . Av disse tre parameterne, de to parameterne start og bredde er valgfrie.
- De start parameter er en start- eller nedre grense heltall i et tilfeldig område. Hvis startparameteren ikke sendes inn i parameteren, får den standardverdien 0 (null).
- EN Stoppe parameter er det siste tallet eller øvre grense heltall i et tilfeldig område.
- De bredde parameter er et område mellom hvert tall i den tilfeldige sekvensen. Denne parameteren er valgfri, og hvis breddeparameteren ikke sendes inn i parameteren, tar den standardverdi 1 (én).
De randrange(start, stopp, bredde) funksjonen inkluderer ikke sluttparameteren mens den genererer det tilfeldige heltallet. De Stoppe parameter er eksklusiv , og den blir ikke generert i et tilfeldig tall.
Se på denne random.randrange(3, 30, 3) funksjonen som vil generere en hvilken som helst tilfeldig heltallsverdi mellom 3 til 30 som 3, 6, 9, 12, …27. Men denne funksjonen inkluderer aldri 30 mens den genererer et tilfeldig tall.
Å generere en tilfeldig applikasjon i en applikasjon har alltid vært viktig, og den har flere sanntidsbruk i hverdagen. For eksempel generere og sende et tilfeldig nummer til en kunde som en OTP (engangspassord) for å gjøre en sikker transaksjon. Et annet eksempel på å generere et tilfeldig tall brukes mens du spiller ludospillet for å generere et tilfeldig terningnummer.
Eksempler 1: random.randrange() genererer et tilfeldig heltall innenfor det gitte området
La oss se et eksempel hvor vi genererer et tilfeldig heltall innenfor et gitt område. Dette eksemplet viser alle de forskjellige formene for random.randrange()-funksjonen.
import random print('Generating random number within a given range ') # Random number between 0 and 29 number1 = random.randrange(30) print('Random integer: ', number1) # Random number between 10 and 29 number2 = random.randrange(10, 30) print('Random integer: ', number2) # Random number between 25 and 200 divisible by 5 number3 = random.randrange(25, 201, 5) print('Random integer: ', number3)
Produksjon:
Eksempel 2: Generer et tilfeldig heltallsområde (multippel) av n
La oss generere det tilfeldige heltallet mellom 5 og 100, som er et område på 5, for eksempel 5, 10, 25, …, 90, 95.
import random #print 'Random number range (multiple) of 5' number = random.randrange(5, 100, 5) print('Random number range (multiple) of 5 is ', number)
Produksjon:
Eksempel 3: Generer det tilfeldige heltall for en bestemt lengde
Du kan også generere et tilfeldig heltall av en bestemt lengde. Hvis du vil generere et tilfeldig antall lengde 3, skriv inn start og Stoppe parameter i randrange() fungerer som minst antall 3-sifrede lengder (100) og minst antall 4-sifrede lengder (1000) fordi det genererer et tilfeldig antall 3-sifrede fra 100 til 999 der 4 siffer (1000) er ekskludert.
Eksempel: Generer et tilfeldig tall på 3 siffer ved å bruke random.randrange()
import random number1 = random.randrange(100, 1000) print('First random number of length 3 is: ', number1) number2 = random.randrange(100, 1000) print('Second random number of length 3 is: ', number2)
Produksjon:
First random number of length 3 is: 813 Second random number of length 3 is: 770
Eksempel 4: Generer et tilfeldig negativt heltall:
La oss se et eksempel som genererer et tilfeldig negativt heltall mellom -50 og -10.
import random randomNagativeInteger = random.randrange(-50, -10) print('Random negative integer number between -50 to -10') print('Random negative integer number between -50 to -10 is: ',randomNagativeInteger)
Produksjon:
Random negative integer number between -50 to -10 Random negative integer number between -50 to -10 is: -43
Eksempel 5: Generer tilfeldig positivt eller negativt heltall
import random number1 = random.randrange(-5, 5) print(number1) number2 = random.randrange(-5, 5) print(number2)
Produksjon:
-5 0
Merk at parameteren start og Stoppe , som sendes inn random.randrange() funksjon må være i økende rekkefølge, som f.eks random.randrange(5, 10) eller random.randrange(-20, -10) . De start parameter alltid være mindre enn Stoppe parameter; ellers genererer denne funksjonen en feil som 'Tilbakesporing (siste anrop sist) og heve ValueError tomt område for randrange()' .
For eksempel:
Se på dette eksemplet der vi bryter regelen ved å passere start parameter større enn Stoppe parameter i random.randrange() funksjon, som genererer en feilmelding som:
shehzad poonawala
import random randomNumber = random.randrange(10,5)
Produksjon:
Noen av de andre funksjonene til Python sin tilfeldig modul som brukes til å generere tall tilfeldig er:
random.choice()
Python tilfeldig modulen har en valg() funksjon som brukes til å velge et tilfeldig element fra en liste eller annen sekvens. EN random.choice() funksjonen brukes til å returnere et tilfeldig element fra listen over verdier.
Syntaks for ramdom.choice()
random.choice(sequence)
eller
random.choices(sequence, k=l)
Her er parameteren sekvens kan være streng, liste, tuppel og random.choice() bare et enkelt tilfeldig element.
I random.choices() funksjon k er antall elementer som skal returneres. Anta at vi ikke nevner verdien for k parameter random.choices() returnerer et enkelt element fra sekvensen eller listen.
Eksempel 1:
I dette eksemplet gir vi på sekvens (liste) som en parameter og returnerer et enkelt tilfeldig element.
import random listValue = [5,10,15,20,25,30] item = random.choice(listValue) print('random item from list is: ', item)
Produksjon:
random item from list is: 10
Eksempel 2:
Random.choices()-funksjonen brukes mest for å returnere tilfeldige elementer med ulike muligheter. Denne funksjonen tar også vekt (k) antall tilfeldige valg. For eksempel ønsker vi å skrive ut 3 tilfeldige filmnavn fra listen over 5 filmer.
import random movieList = ['Matrix', 'Terminator', 'Black Panther', 'Avengers', 'Titanic'] randomMovies = random.choices(movieList, k=3) print('random movies from list are: ', randomMovies)
Produksjon:
random movies from list are: ['Avengers', 'Black Panther', 'Titanic']
random.randint()
Python random.randint() funksjonen brukes til å generere et tilfeldig heltall innenfor det angitte området.
Syntaks:
random.randint(start, stop)
De random.randint() funksjonen tar to parametere start , som er et startområde, og Stoppe , som er et sluttområde. Begge parameterne (start, stopp) er inkludert mens de genererer et tilfeldig tall.
Eksempel på random.randint() som genererer en liste med tilfeldige heltall
Dette eksemplet vil lage en liste over flere tilfeldige heltall ved å bruke randint()-funksjonen. Genererer en liste med 5 tilfeldige heltall mellom 1 og 100, begge verdiene er inkluderende.
import random randomListValue = [] # specifing length of list equal to 5 for i in range(0, 5): # generates random numbers from 1 to 100 randomListValue.append(random.randint(1, 100)) print('Printing list of 5 generated random numbers') print(randomListValue)
Produksjon:
Printing list of 5 generated random numbers [65, 82, 3, 39, 40]
Det kan imidlertid være en mulighet for det random.randint() funksjonen returnerer et duplikatnummer i utdataresultatet. For å unngå det dupliserte tilfeldige heltall i et resultat, bruk tilfeldig utvalg() funksjon.
tilfeldig utvalg()
I eksemplet ovenfor kan det være en mulighet for det random.randint() genererer det dupliserte tilfeldige tallet fra listen. Hvis du vil generere unike tilfeldige tall fra en liste, bruk tilfeldig utvalg() funksjon.
De tilfeldig utvalg() funksjonen genererer unike elementer fra et sett, en liste og andre sekvenser. Pythons random.sample()-funksjon tillater tilfeldig sampling av mer enn ett element innenfor et område fra listen uten å duplisere.
Eksempel på en random.sample() for å generere tilfeldige elementer fra en liste uten duplikater:
I dette eksemplet vil vi generere 10 tilfeldige heltall fra området 0 til 100.
import random # Generate 10 unique random numbers within a range randomList = random.sample(range(0, 100), 10) print(randomList)
Produksjon:
[15, 17, 16, 66, 34, 85, 71, 82, 97, 48]
Hvis du vil generere en liste med tilfeldige tall og hvert av dem må være multiplum av 'n', bruk trinnparameteren til range()-funksjonen.
For eksempel generere 10 tilfeldige heltall som er multiplum av 5 fra området 0 til 100 ved å bruke random.sample(range(0, 100, 5), 10).
import random # Generate 10 unique random numbers within a range randomList = random.sample(range(0, 100, 5), 10) print(randomList)
Produksjon:
[75, 40, 20, 55, 15, 10, 5, 90, 95, 70]
List sort()
Pytonen sortere() funksjonen brukes til å sortere de tilfeldige heltallene i listen i stigende rekkefølge (som standard). Vi kan også sortere listeverdien i synkende rekkefølge ved å spesifisere rekkefølgen omvendt = Sant . Standardverdien til omvendt er Falsk .
Eksempel 1: sort() sorterer listeelementer i stigende rekkefølge
I dette eksemplet vil vi generere en tilfeldig liste med 5 tall i området 50 til 100 med bredden 5 og sortere dem ved å bruke sortere() funksjon.
import random randomList = random.sample(range(50, 100, 5), 5) print('Before sorting random integers list') print(randomList) # sort the list ascending order by default randomList.sort() print('After sorting random integers list') print(randomList)
Produksjon:
Before sorting random integers list [90, 80, 60, 55, 85] After sorting random integers list [55, 60, 80, 85, 90]
Eksempel 2: sort() sorterer listeelementer i synkende rekkefølge
I dette eksemplet vil vi sortere listeelementene i synkende rekkefølge ved hjelp av randomList.sort(reverse=True) .
import random randomList = random.sample(range(50, 100, 5), 5) print('Before sorting random integers list') print(randomList) # sort the list descending order randomList.sort(reverse=True) print('After sorting random integers list') print(randomList)
Produksjon:
Before sorting random integers list [70, 50, 80, 90, 85] After sorting random integers list [90, 85, 80, 70, 50]