logo

Python random randomrange()

Python tilfældig modul gør det muligt at generere tilfældige tal. De genererede tal er en sekvens af pseudo-tilfældige tal, som er baseret på den anvendte funktion. Der er forskellige typer funktioner, der bruges i et tilfældigt modul til at generere tilfældige tal, som f.eks random.random(), random.randint(), random.choice(), random.random.(start, stop, bredde) , og mange flere.

Her vil vi diskutere randrange() funktion af tilfældig modul. Det randrange() funktion bruges til at generere et tilfældigt tal mellem det angivne område i dens parameter. Den accepterer tre parametre: startnummer, stopnummer og bredde, som bruges til at springe et tal over i området.

Syntaks for random.randrange()

 random.randrange(start, stop[, width]) 

Det random.randrange() funktion returnerer et tilfældigt heltal inden for det givne område, dvs. start og stop. Det random.randrange() funktion tager tre parametre som input start, stop , og bredde . Ud af disse tre parametre er de to parametre Start og bredde er valgfri.

  • Det Start parameter er en start- eller nedre grænse heltal i et tilfældigt område. Hvis startparameteren ikke sendes i parameter, tager den standardværdien 0 (nul).
  • EN hold op parameter er det sidste tal eller den øvre grænse heltal i et tilfældigt område.
  • Det bredde parameter er et interval mellem hvert tal i den tilfældige rækkefølge. Denne parameter er valgfri, og hvis breddeparameteren ikke sendes i parameter, tager den standardværdi 1 (én).

Det randrange (start, stop, bredde) funktionen inkluderer ikke slutparameteren, mens den genererer det tilfældige heltal. Det hold op parameter er eksklusiv , og det bliver ikke genereret i et tilfældigt tal.

Se på denne random.randrange(3, 30, 3) funktion, der vil generere enhver tilfældig heltalværdi mellem 3 til 30 som 3, 6, 9, 12, …27. Men denne funktion inkluderer aldrig 30, mens den genererer et tilfældigt tal.

Det har altid været vigtigt at generere en tilfældig applikation, og den har flere realtidsanvendelser i det daglige liv. For eksempel generering og afsendelse af et tilfældigt nummer til en kunde som en OTP (engangskodeord) for at foretage en sikker transaktion. Et andet eksempel på generering af et tilfældigt tal bruges, mens du spiller ludo-spillet til at generere et tilfældigt terningtal.

Eksempler 1: random.randrange() genererer et tilfældigt heltal inden for det givne interval

Lad os se et eksempel, hvor vi genererer et tilfældigt heltal inden for et givet område. Dette eksempel viser alle de forskellige former for random.randrange() funktion.

 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) 

Produktion:

Python random randomrange()

Eksempel 2: Generer et tilfældigt heltal (multiple) af n

Lad os generere det tilfældige heltal mellem 5 og 100, som er et interval på 5, såsom 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) 

Produktion:

Python random randomrange()

Eksempel 3: Generer det tilfældige heltal for en bestemt længde

Du kan også generere et tilfældigt heltal af en bestemt længde. Hvis du vil generere et tilfældigt tal med længde 3, skal du indtaste Start og hold op parameter i randrange() fungere som mindste antal 3-cifrede længder (100) og mindste antal 4-cifrede længder (1000), fordi det genererer et tilfældigt antal 3-cifrede fra 100 til 999, hvor 4 cifre (1000) er udelukket.

Eksempel: Generer et tilfældigt tal på 3 cifre ved hjælp af 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) 

Produktion:

 First random number of length 3 is: 813 Second random number of length 3 is: 770 

Eksempel 4: Generer et tilfældigt negativt heltal:

Lad os se et eksempel, der genererer et tilfældigt negativt heltal mellem -50 til -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) 

Produktion:

 Random negative integer number between -50 to -10 Random negative integer number between -50 to -10 is: -43 

Eksempel 5: Generer tilfældigt positivt eller negativt heltal

 import random number1 = random.randrange(-5, 5) print(number1) number2 = random.randrange(-5, 5) print(number2) 

Produktion:

 -5 0 

Bemærk at parameteren Start og hold op , som sendes ind random.randrange() funktion skal være i stigende rækkefølge, som f.eks random.randrange(5, 10) eller random.randrange(-20, -10) . Det Start parameter altid være mindre end hold op parameter; ellers genererer denne funktion en fejl som 'Traceback (seneste opkald sidst) og hæv ValueError tomt område for randrange()' .

For eksempel:

Se på dette eksempel, hvor vi overtræder reglen ved at passere Start parameter større end hold op parameter i random.randrange() funktion, som genererer en fejlmeddelelse som:

Algoritme til binær søgning
 import random randomNumber = random.randrange(10,5) 

Produktion:

Python random randomrange()

Nogle af de andre funktioner i Python's tilfældig modul der bruges til at generere tal tilfældigt er:

    valg() randint() prøve() sortere()

random.choice()

Python tilfældig modul har en valg() funktion, der bruges til at vælge et tilfældigt element fra en liste eller anden sekvens. EN random.choice() funktion bruges til at returnere et tilfældigt element fra listen over værdier.

Syntaks for ramdom.choice()

 random.choice(sequence) 

eller

 random.choices(sequence, k=l) 

Her er parameteren rækkefølge kan være streng, liste, tupel og random.choice() kun et enkelt tilfældigt element.

I den random.choices() fungere k er antallet af elementer, der skal returneres. Antag, at vi ikke nævner værdien for k parameter den random.choices() returnerer et enkelt element fra sekvensen eller listen.

Eksempel 1:

I dette eksempel leverer vi på sekvens (liste) som en parameter og returnerer et enkelt tilfældigt element.

 import random listValue = [5,10,15,20,25,30] item = random.choice(listValue) print('random item from list is: ', item) 

Produktion:

 random item from list is: 10 

Eksempel 2:

Funktionen random.choices() bruges mest til at returnere tilfældige elementer med forskellige muligheder. Denne funktion tager også vægt (k) antallet af tilfældige valg. For eksempel vil vi udskrive 3 tilfældige filmnavn fra en liste med 5 film.

 import random movieList = ['Matrix', 'Terminator', 'Black Panther', 'Avengers', 'Titanic'] randomMovies = random.choices(movieList, k=3) print('random movies from list are: ', randomMovies) 

Produktion:

 random movies from list are: ['Avengers', 'Black Panther', 'Titanic'] 

random.randint()

Python random.randint() funktion bruges til at generere et tilfældigt heltal inden for det angivne interval.

Syntaks:

 random.randint(start, stop) 

Det random.randint() funktion tager to parametre Start , som er et startområde, og hold op , som er et slutområde. Begge parametre (start, stop) er inkluderet, mens der genereres et tilfældigt tal.

Eksempel på random.randint(), der genererer en liste over tilfældige heltal

Dette eksempel vil oprette en liste over flere tilfældige heltal ved hjælp af randint()-funktionen. Genererer en liste med 5 tilfældige heltal mellem 1 og 100, begge værdier er inklusive.

 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) 

Produktion:

 Printing list of 5 generated random numbers [65, 82, 3, 39, 40] 

Det kan der dog være en mulighed for den random.randint() funktion returnerer et dublettal i outputresultatet. For at undgå det duplikerede tilfældige heltal i et resultat, brug random.sample() fungere.

random.sample()

I ovenstående eksempel kan der være mulighed for, at random.randint() genererer det duplikerede tilfældige nummer fra listen. Hvis du vil generere unikke tilfældige tal fra en liste, skal du bruge random.sample() fungere.

Det random.sample() funktionen genererer unikke elementer fra et sæt, en liste og andre sekvenser. Pythons random.sample() funktion tillader tilfældig stikprøve af mere end ét element inden for et område fra listen uden at duplikere.

Eksempel på en random.sample() til at generere tilfældige elementer fra en liste uden dubletter:

I dette eksempel vil vi generere 10 tilfældige heltal 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) 

Produktion:

 [15, 17, 16, 66, 34, 85, 71, 82, 97, 48] 

Hvis du vil generere en liste over tilfældige tal, og hver af dem skal være multiplum af 'n', skal du bruge trinparameteren for range()-funktionen.

For eksempel generering af 10 tilfældige heltal, som er multiplum af 5 fra intervallet 0 til 100 ved hjælp af 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) 

Produktion:

 [75, 40, 20, 55, 15, 10, 5, 90, 95, 70] 

Liste sort()

Python sortere() funktionen bruges til at sortere de tilfældige heltal på listen i stigende rækkefølge (som standard). Vi kan også sortere listeværdien i faldende rækkefølge ved at angive dens rækkefølge omvendt = Sandt . Standardværdien på baglæns er Falsk .

Eksempel 1: sort() sorterer listeelementer i stigende rækkefølge

I dette eksempel vil vi generere en tilfældig liste med 5 numre i intervallet 50 til 100 med bredden 5 og sortere dem vha. sortere() fungere.

 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) 

Produktion:

 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 faldende rækkefølge

I dette eksempel vil vi sortere listeelementerne i faldende rækkefølge vha 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) 

Produktion:

 Before sorting random integers list [70, 50, 80, 90, 85] After sorting random integers list [90, 85, 80, 70, 50]