logo

Python willekeurige willekeurige bereik()

De Python willekeurig module maakt het genereren van willekeurige getallen mogelijk. De gegenereerde getallen zijn een reeks pseudo-willekeurige getallen, die zijn gebaseerd op de gebruikte functie. Er zijn verschillende soorten functies die in een willekeurige module worden gebruikt om willekeurige getallen te genereren, zoals random.random(), random.randint(), random.choice(), random.randrange(start, stop, breedte) , en nog veel meer.

Hier bespreken we de willekeurig() functie van de willekeurig module. De willekeurig() functie wordt gebruikt om een ​​willekeurig getal te genereren binnen het opgegeven bereik in de parameter. Het accepteert drie parameters: startnummer, stopnummer en breedte, die wordt gebruikt om een ​​nummer in het bereik over te slaan.

Syntaxis van willekeurig.randrange()

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

De willekeurig.randrange() functie retourneert een willekeurig geheel getal binnen het opgegeven bereik, d.w.z. start en stop. De willekeurig.randrange() functie heeft drie parameters als invoer start Stop , En breedte . Van deze drie parameters zijn er twee parameters begin En breedte zijn optioneel.

  • De begin parameter is een geheel getal als begin- of ondergrens in een willekeurig bereik. Als de startparameter niet in de parameter wordt doorgegeven, wordt de standaardwaarde 0 (nul) gebruikt.
  • A stop parameter is het laatste getal of gehele getal met de bovengrens in een willekeurig bereik.
  • De breedte parameter is een bereik tussen elk getal in de willekeurige reeks. Deze parameter is optioneel en als de breedteparameter niet in de parameter wordt doorgegeven, heeft deze de standaardwaarde 1 (één).

De randrange(begin, stop, breedte) functie bevat niet de parameter end bij het genereren van het willekeurige gehele getal. De stop parameter is exclusief , en het wordt niet gegenereerd in een willekeurig getal.

Kijk eens naar deze functie random.randrange(3, 30, 3) die een willekeurige gehele waarde tussen 3 en 30 genereert, zoals 3, 6, 9, 12, ...27. Maar deze functie omvat nooit 30 bij het genereren van een willekeurig getal.

Het genereren van een willekeurige in een applicatie is altijd belangrijk geweest, en het kan in het dagelijks leven op verschillende manieren in realtime worden gebruikt. Bijvoorbeeld het genereren en verzenden van een willekeurig nummer naar een klant als OTP (eenmalig wachtwoord) voor het uitvoeren van een veilige transactie. Een ander voorbeeld van het genereren van een willekeurig getal wordt gebruikt tijdens het spelen van het ludo-spel om een ​​willekeurig dobbelsteennummer te genereren.

Voorbeelden 1: random.randrange() genereert een willekeurig geheel getal binnen het opgegeven bereik

Laten we een voorbeeld bekijken waarin we een willekeurig geheel getal binnen een bepaald bereik genereren. Dit voorbeeld toont alle verschillende vormen van de functie random.randrange().

 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) 

Uitgang:

Python willekeurige willekeurige bereik()

Voorbeeld 2: Genereer een willekeurig geheel getalbereik (veelvoud) van n

Laten we het willekeurige gehele getal tussen 5 en 100 genereren, wat een bereik van 5 is, zoals 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) 

Uitgang:

Python willekeurige willekeurige bereik()

Voorbeeld 3: Genereer het willekeurige gehele getal met een specifieke lengte

U kunt ook een willekeurig geheel getal met een specifieke lengte genereren. Als u een willekeurig getal met lengte 3 wilt genereren, voert u de begin En stop parameter in willekeurig() functioneert als het kleinste getal met een lengte van 3 cijfers (100) en het kleinste getal met een lengte van 4 cijfers (1000), omdat het een willekeurig getal van 3 cijfers genereert van 100 tot 999 waarbij 4 cijfers (1000) worden uitgesloten.

Voorbeeld: Genereer een willekeurig getal van 3 cijfers met 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) 

Uitgang:

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

Voorbeeld 4: Genereer een willekeurig negatief geheel getal:

Laten we een voorbeeld bekijken dat een willekeurig negatief geheel getal tussen -50 en -10 genereert.

 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) 

Uitgang:

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

Voorbeeld 5: Genereer een willekeurig positief of negatief geheel getal

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

Uitgang:

 -5 0 

Houd er rekening mee dat de parameter begin En stop , die wordt doorgegeven willekeurig.randrange() functie moet in oplopende volgorde staan, zoals willekeurig.randbereik(5, 10) of willekeurig.randbereik(-20, -10) . De begin parameter moet altijd kleiner zijn dan de stop parameter; anders genereert deze functie een fout als 'Traceback (meest recente oproep als laatste) en verhoog het lege ValueError-bereik voor randrange()' .

Bijvoorbeeld:

Kijk eens naar dit voorbeeld waarin we de regel overtreden door de begin parameter groter dan de stop parameter in willekeurig.randrange() functie, die een foutmelding genereert als:

java-string join
 import random randomNumber = random.randrange(10,5) 

Uitgang:

Python willekeurige willekeurige bereik()

Enkele van de andere functies van Python's willekeurig module die worden gebruikt om willekeurig getallen te genereren zijn:

    keuze() randint() steekproef() soort()

willekeurige keuze()

Python willekeurig module heeft een keuze() functie die wordt gebruikt om een ​​willekeurig element uit een lijst of een andere reeks te kiezen. A willekeurige keuze() functie wordt gebruikt om een ​​willekeurig element uit de lijst met waarden te retourneren.

Syntaxis van ramdom.choice()

 random.choice(sequence) 

of

 random.choices(sequence, k=l) 

Hier de parameter reeks kan string, list, tuple en zijn willekeurige keuze() slechts één willekeurig element.

In de willekeurige.keuzes() functie k is het aantal elementen dat moet worden geretourneerd. Stel dat we de waarde voor niet vermelden k parameter de willekeurige.keuzes() retourneert een enkel item uit de reeks of lijst.

Voorbeeld 1:

In dit voorbeeld geven we op reeks (lijst) als parameter op en retourneren we een enkel willekeurig element.

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

Uitgang:

 random item from list is: 10 

Voorbeeld 2:

De functie random.choices() wordt meestal gebruikt voor het retourneren van willekeurige elementen met verschillende mogelijkheden. Deze functie neemt ook het gewicht (k) van het aantal willekeurige keuzes. We willen bijvoorbeeld 3 willekeurige filmnamen afdrukken uit de lijst met 5 films.

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

Uitgang:

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

willekeurig.randint()

Python willekeurig.randint() functie wordt gebruikt om een ​​willekeurig geheel getal binnen het opgegeven bereik te genereren.

Syntaxis:

 random.randint(start, stop) 

De willekeurig.randint() functie heeft twee parameters nodig begin , wat een startbereik is, en stop , wat een eindbereik is. Beide parameters (start, stop) worden meegenomen bij het genereren van een willekeurig getal.

Voorbeeld van random.randint() die een lijst met willekeurige gehele getallen genereert

In dit voorbeeld wordt een lijst met meerdere willekeurige gehele getallen gemaakt met behulp van de functie randint(). Er wordt een lijst met 5 willekeurige gehele getallen tussen 1 en 100 gegenereerd, waarbij beide waarden inclusief zijn.

 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) 

Uitgang:

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

Er kan echter een mogelijkheid zijn dat dit wel het geval is de willekeurige.randint() functie retourneert een duplicaatgetal in het uitvoerresultaat. Gebruik om het dubbele willekeurige gehele getal in een resultaat te voorkomen willekeurig voorbeeld() functie.

willekeurig voorbeeld()

In het bovenstaande voorbeeld is er mogelijk een mogelijkheid dat dit het geval is willekeurig.randint() genereert het dubbele willekeurige getal uit de lijst. Als u unieke willekeurige getallen uit een lijst wilt genereren, gebruikt u willekeurig voorbeeld() functie.

De willekeurig voorbeeld() functie genereert unieke elementen uit een set, lijst en andere reeksen. De functie random.sample() van Python maakt willekeurige steekproeven mogelijk van meer dan één element binnen een bereik uit de lijst zonder te dupliceren.

Voorbeeld van een random.sample() om willekeurige elementen uit een lijst te genereren zonder duplicaten:

In dit voorbeeld genereren we 10 willekeurige gehele getallen tussen 0 en 100.

 import random # Generate 10 unique random numbers within a range randomList = random.sample(range(0, 100), 10) print(randomList) 

Uitgang:

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

Als u een lijst met willekeurige getallen wilt genereren en elk daarvan moet een veelvoud zijn van 'n', gebruik dan de stapparameter van de functie range().

U kunt bijvoorbeeld 10 willekeurige gehele getallen genereren die een veelvoud zijn van 5 uit het bereik 0 tot 100 met behulp van 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) 

Uitgang:

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

Lijst sorteren()

De Python soort() functie wordt gebruikt om de willekeurige gehele getallen van de lijst in oplopende volgorde te sorteren (standaard). We kunnen de lijstwaarde ook in aflopende volgorde sorteren door de volgorde op te geven omgekeerd = Waar . De standaardwaarde van achteruit is Vals .

Voorbeeld 1: sort() sorteert lijstelementen in oplopende volgorde

In dit voorbeeld genereren we een willekeurige lijst van 5 getallen in een bereik van 50 tot 100 met een breedte van 5 en sorteren we deze met soort() functie.

 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) 

Uitgang:

 Before sorting random integers list [90, 80, 60, 55, 85] After sorting random integers list [55, 60, 80, 85, 90] 

Voorbeeld 2: sort() sorteert lijstelementen in aflopende volgorde

In dit voorbeeld sorteren we de lijstelementen in aflopende volgorde met behulp van willekeurigeLijst.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) 

Uitgang:

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