2014-03-30 12 views
10

Ich googelte es sehr, konnte es aber nicht finden. Ich möchte die Verwendung von random.sample() Methode kennen und was gibt es? Wann sollte es verwendet werden und einige Beispielverwendung.Was macht die Methode random.sample() in Python?

+3

http://docs.python.org/2/library/random.html#random.sample – sshashank124

+1

http://stackoverflow.com/questions/22577916/using-nested-loops-to-generate-3-verschiedene-Zufallszahlen/22577977 # 22577977 –

Antwort

25

Nach documentation:

random.sample (Population, k)

Return a k Länge Liste von einzigartigen Elementen aus der Population Sequenz ausgewählt. Wird für Stichproben ohne Ersatz verwendet.

Grundsätzlich nimmt es k eindeutige Zufallselemente, um eine Probe, die aus einer Sequenz:

>>> import random 
>>> c = list(range(0, 15)) 
>>> c 
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14] 
>>> random.sample(c, 5) 
[9, 2, 3, 14, 11] 

random.sample funktioniert auch direkt aus einem Bereich:

>>> c = range(0, 15) 
>>> c 
range(0, 15) 
>>> random.sample(c, 5) 
[12, 3, 6, 14, 10] 

Zusätzlich zu Sequenzen, random.sample funktioniert auch mit Sätzen:

>>> c = {1, 2, 4} 
>>> random.sample(c, 2) 
[4, 1] 

Allerdings ist random.sample nicht mit beliebigen Iteratoren arbeiten:

>>> c = [1, 3] 
>>> random.sample(iter(c), 5) 
TypeError: Population must be a sequence or set. For dicts, use list(d). 
+0

so aus einer gegebenen Sequenz wird es zufällig eine gegebene Nr. Wählen. von Elementen, richtig ?? – kartikeykant18

+0

@kartikey_kant Yup, das ist es, es ist einfach. – alecxe

Verwandte Themen