Der Python zufällig Modul ermöglicht die Generierung von Zufallszahlen. Die generierten Zahlen sind eine Folge von Pseudozufallszahlen, die auf der verwendeten Funktion basieren. Es gibt verschiedene Arten von Funktionen, die in einem Zufallsmodul zum Generieren von Zufallszahlen verwendet werden, wie z random.random(), random.randint(), random.choice(), random.randrange(start, stop, width) , und viele mehr.
Hier werden wir das besprechen Randrange() Funktion der zufällig Modul. Der Randrange() Die Funktion wird verwendet, um eine Zufallszahl zwischen dem in ihrem Parameter angegebenen Bereich zu generieren. Es akzeptiert drei Parameter: Startnummer, Stoppnummer und Breite, die zum Überspringen einer Nummer im Bereich verwendet wird.
Syntax von random.randrange()
random.randrange(start, stop[, width])
Der random.randrange() Die Funktion gibt eine zufällige Ganzzahl innerhalb des angegebenen Bereichs zurück, d. h. Start und Stopp. Der random.randrange() Die Funktion benötigt drei Parameter als Eingabe Start stop , Und Breite . Von diesen drei Parametern sind die beiden Parameter Start Und Breite sind optional.
- Der Start Der Parameter ist eine ganzzahlige Anfangs- oder Untergrenze in einem zufälligen Bereich. Wenn der Startparameter nicht im Parameter übergeben wird, nimmt er den Standardwert 0 (Null) an.
- A stoppen Parameter ist die letzte Zahl oder ganzzahlige Obergrenze in einem Zufallsbereich.
- Der Breite Der Parameter ist ein Bereich zwischen den einzelnen Zahlen in der Zufallsfolge. Dieser Parameter ist optional und wenn der Breitenparameter nicht im Parameter übergeben wird, nimmt er den Standardwert 1 (eins) an.
Der randrange(Start, Stopp, Breite) Die Funktion schließt den Endparameter beim Generieren der zufälligen Ganzzahl nicht ein. Der stoppen Parameter ist exklusiv , und es wird nicht in einer Zufallszahl generiert.
Schauen Sie sich diese Funktion random.randrange(3, 30, 3) an, die einen beliebigen zufälligen ganzzahligen Wert zwischen 3 und 30 generiert, z. B. 3, 6, 9, 12, … 27. Diese Funktion schließt jedoch niemals 30 ein, während sie eine Zufallszahl generiert.
Das Generieren eines Zufalls in einer Anwendung war schon immer wichtig und hat im täglichen Leben mehrere Echtzeitanwendungen. Zum Beispiel das Generieren und Versenden einer Zufallszahl als OTP (Einmalpasswort) an einen Kunden, um eine sichere Transaktion durchzuführen. Ein weiteres Beispiel für die Generierung einer Zufallszahl wird beim Spielen des Ludo-Spiels verwendet, um eine zufällige Würfelzahl zu generieren.
Beispiele 1: random.randrange() generiert eine zufällige Ganzzahl innerhalb des angegebenen Bereichs
Sehen wir uns ein Beispiel an, in dem wir eine zufällige Ganzzahl innerhalb eines bestimmten Bereichs generieren. Dieses Beispiel zeigt alle verschiedenen Formen der Funktion 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)
Ausgabe:
Beispiel 2: Generieren Sie einen zufälligen ganzzahligen Zahlenbereich (Vielfaches) von n
Lassen Sie uns eine zufällige Ganzzahl zwischen 5 und 100 generieren, was einem Bereich von 5 entspricht, z. B. 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)
Ausgabe:
Beispiel 3: Generieren Sie die zufällige Ganzzahl einer bestimmten Länge
Sie können auch eine zufällige Ganzzahl einer bestimmten Länge generieren. Wenn Sie eine Zufallszahl der Länge 3 generieren möchten, geben Sie Folgendes ein Start Und stoppen Parameter in Randrange() Funktion als kleinste Zahl mit einer Länge von 3 Ziffern (100) und als kleinste Zahl mit einer Länge von 4 Ziffern (1000), da sie eine Zufallszahl mit drei Ziffern von 100 bis 999 generiert, wobei 4 Ziffern (1000) ausgeschlossen sind.
Beispiel: Generieren Sie mit random.randrange() eine dreistellige Zufallszahl
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)
Ausgabe:
First random number of length 3 is: 813 Second random number of length 3 is: 770
Beispiel 4: Generieren Sie eine zufällige negative Ganzzahl:
Sehen wir uns ein Beispiel an, das eine zufällige negative Ganzzahl zwischen -50 und -10 generiert.
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)
Ausgabe:
Random negative integer number between -50 to -10 Random negative integer number between -50 to -10 is: -43
Beispiel 5: Generieren Sie eine zufällige positive oder negative Ganzzahl
import random number1 = random.randrange(-5, 5) print(number1) number2 = random.randrange(-5, 5) print(number2)
Ausgabe:
-5 0
Beachten Sie, dass der Parameter Start Und stoppen , die übergeben wird random.randrange() Die Funktion muss in aufsteigender Reihenfolge sein, z random.randrange(5, 10) oder random.randrange(-20, -10) . Der Start Parameter immer kleiner sein als der stoppen Parameter; Andernfalls generiert diese Funktion einen Fehler als „Traceback (letzter Aufruf zuletzt) und ValueError leeren Bereich für randrange() auslösen“ .
Zum Beispiel:
Schauen Sie sich dieses Beispiel an, in dem wir gegen die Regel verstoßen, indem wir das übergeben Start Parameter größer als der stoppen Parameter in random.randrange() Funktion, die eine Fehlermeldung wie folgt generiert:
Linkliste in Java
import random randomNumber = random.randrange(10,5)
Ausgabe:
Einige der anderen Funktionen von Pythons zufällig Modul die zur zufälligen Generierung von Zahlen verwendet werden, sind:
random.choice()
Python zufällig Modul hat eine Auswahl() Funktion zur Auswahl eines zufälligen Elements aus einer Liste oder einer anderen Sequenz. A random.choice() Die Funktion wird verwendet, um ein zufälliges Element aus der Werteliste zurückzugeben.
Syntax von ramdom.choice()
random.choice(sequence)
oder
random.choices(sequence, k=l)
Hier der Parameter Reihenfolge kann eine Zeichenfolge, eine Liste, ein Tupel usw. sein random.choice() nur ein einziges zufälliges Element.
Im random.choices() Funktion k ist die Anzahl der Elemente, die zurückgegeben werden sollen. Angenommen, wir erwähnen den Wert für nicht k Parameter der random.choices() gibt ein einzelnes Element aus der Sequenz oder Liste zurück.
Beispiel 1:
In diesem Beispiel stellen wir eine Sequenz (Liste) als Parameter bereit und geben ein einzelnes Zufallselement zurück.
import random listValue = [5,10,15,20,25,30] item = random.choice(listValue) print('random item from list is: ', item)
Ausgabe:
random item from list is: 10
Beispiel 2:
Die Funktion random.choices() wird hauptsächlich zum Zurückgeben von Zufallselementen mit verschiedenen Möglichkeiten verwendet. Diese Funktion nimmt auch das Gewicht (k) der Anzahl der zufälligen Auswahlmöglichkeiten an. Zum Beispiel möchten wir drei zufällige Filmnamen aus einer Liste mit fünf Filmen drucken.
import random movieList = ['Matrix', 'Terminator', 'Black Panther', 'Avengers', 'Titanic'] randomMovies = random.choices(movieList, k=3) print('random movies from list are: ', randomMovies)
Ausgabe:
random movies from list are: ['Avengers', 'Black Panther', 'Titanic']
random.randint()
Python random.randint() Die Funktion wird verwendet, um eine zufällige Ganzzahl innerhalb des angegebenen Bereichs zu generieren.
Syntax:
random.randint(start, stop)
Der random.randint() Die Funktion benötigt zwei Parameter Start , was ein Startbereich ist, und stoppen , was ein Endbereich ist. Bei der Generierung einer Zufallszahl werden beide Parameter (Start, Stopp) berücksichtigt.
Beispiel für die Generierung einer Liste zufälliger Ganzzahlen durch random.randint()
In diesem Beispiel wird mithilfe der Funktion randint() eine Liste mehrerer zufälliger Ganzzahlen erstellt. Erzeugt eine Liste mit 5 zufälligen Ganzzahlen zwischen 1 und 100, beide Werte sind 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)
Ausgabe:
Printing list of 5 generated random numbers [65, 82, 3, 39, 40]
Es besteht jedoch die Möglichkeit, dass die random.randint() Die Funktion gibt im Ausgabeergebnis eine doppelte Zahl zurück. Um die doppelte zufällige Ganzzahl in einem Ergebnis zu vermeiden, verwenden Sie zufällige Probe() Funktion.
zufällige Probe()
Im obigen Beispiel besteht möglicherweise die Möglichkeit, dass random.randint() generiert die doppelte Zufallszahl aus der Liste. Wenn Sie aus einer Liste eindeutige Zufallszahlen generieren möchten, verwenden Sie zufällige Probe() Funktion.
Der zufällige Probe() Die Funktion generiert eindeutige Elemente aus einer Menge, einer Liste und anderen Sequenzen. Die Funktion random.sample() von Python ermöglicht die zufällige Auswahl von mehr als einem Element innerhalb eines Bereichs aus der Liste ohne Duplizierung.
Beispiel für eine random.sample() zum Generieren zufälliger Elemente aus einer Liste ohne Duplikate:
In diesem Beispiel generieren wir 10 zufällige Ganzzahlen im Bereich von 0 bis 100.
import random # Generate 10 unique random numbers within a range randomList = random.sample(range(0, 100), 10) print(randomList)
Ausgabe:
[15, 17, 16, 66, 34, 85, 71, 82, 97, 48]
Wenn Sie eine Liste von Zufallszahlen generieren möchten und jede davon ein Vielfaches von „n“ sein muss, verwenden Sie den Schrittparameter der Funktion „range()“.
Generieren Sie beispielsweise mit random.sample(range(0, 100, 5), 10) 10 zufällige Ganzzahlen, die ein Vielfaches von 5 sind, aus dem Bereich 0 bis 100.
import random # Generate 10 unique random numbers within a range randomList = random.sample(range(0, 100, 5), 10) print(randomList)
Ausgabe:
[75, 40, 20, 55, 15, 10, 5, 90, 95, 70]
Listensortierung()
Der Python Sortieren() Die Funktion wird verwendet, um die zufälligen Ganzzahlen der Liste in aufsteigender Reihenfolge zu sortieren (standardmäßig). Wir können den Listenwert auch in absteigender Reihenfolge sortieren, indem wir seine Reihenfolge angeben umgekehrt = Wahr . Der Standardwert von umkehren Ist FALSCH .
Beispiel 1: sort() sortiert Listenelemente in aufsteigender Reihenfolge
In diesem Beispiel erstellen wir eine zufällige Liste von 5 Zahlen im Bereich von 50 bis 100 mit der Breite 5 und sortieren sie nach Sortieren() Funktion.
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)
Ausgabe:
Before sorting random integers list [90, 80, 60, 55, 85] After sorting random integers list [55, 60, 80, 85, 90]
Beispiel 2: sort() sortiert Listenelemente in absteigender Reihenfolge
In diesem Beispiel sortieren wir die Listenelemente in absteigender Reihenfolge nach 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)
Ausgabe:
Before sorting random integers list [70, 50, 80, 90, 85] After sorting random integers list [90, 85, 80, 70, 50]