Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich in Python eine Liste eindeutiger Zufallszahlen innerhalb eines Bereichs generieren?

Wie kann ich in Python eine Liste eindeutiger Zufallszahlen innerhalb eines Bereichs generieren?

Susan Sarandon
Susan SarandonOriginal
2024-12-02 22:39:11794Durchsuche

How Can I Generate a List of Unique Random Numbers Within a Range in Python?

Eindeutige Zufallszahlengenerierung innerhalb eines Bereichs

Angesichts der Möglichkeit, mithilfe von random.randint eine Zufallszahl innerhalb eines Bereichs zu generieren, stellt sich die Aufgabe eine Liste einzigartiger Zufallszahlen zu erstellen. Während iterative bedingte Anweisungen als Lösung dienen können, gibt es einen eleganteren Ansatz, um dieses Ergebnis effizient zu erreichen.

Zufallsstichprobe

Das Zufallsmodul von Python stellt eine Funktion speziell mit dem Namen „sample“ bereit für die ersatzlose Probenahme konzipiert. Diese Funktion verwendet eine Grundgesamtheit (z. B. eine Liste von Zahlen) und eine Stichprobengröße als Argumente und gibt eine Liste zufällig ausgewählter eindeutiger Elemente aus der Grundgesamtheit zurück.

Zum Beispiel, um eine Liste von 3 eindeutigen Zufallszahlen zu generieren Innerhalb des Bereichs [1, 100] kann man den folgenden Code verwenden:

import random

population = range(1, 100)  # Initialize the population
sample_size = 3  # Set the sample size
random_sample = random.sample(population, sample_size)

random_sample enthält nun eine Liste von 3 eindeutigen Zufallszahlen innerhalb des angegebenen Bereichs Bereich.

Umgang mit Größendiskrepanzen

Es ist wichtig zu beachten, dass die Stichprobe einen ValueError auslöst, wenn die Stichprobengröße die Grundgesamtheitsgröße überschreitet. Um dieses Szenario zu bewältigen, kann man einen Try-Except-Block verwenden, um die Ausnahme abzufangen und entsprechend zu behandeln.

Um beispielsweise zu versuchen, eine Stichprobe der Größe 3 aus einer Grundgesamtheit der Größe 2 zu generieren, kann man Folgendes schreiben Folgender Code:

try:
    random.sample(range(1, 2), 3)
except ValueError:
    print('Sample size exceeded population size.')

Wenn die Stichprobengröße größer als die Grundgesamtheit ist, gibt dieser Code eine informative Meldung aus und stürzt nicht ab.

Das obige ist der detaillierte Inhalt vonWie kann ich in Python eine Liste eindeutiger Zufallszahlen innerhalb eines Bereichs generieren?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn