Mooduli random meetod sample
Mooduli random meetod sample
tagastab juhusliku elementide valimi
järjestusest. Meetodi esimeses parameetris
määrame järjestuse, teises parameetris - elementide arvu,
mida tahame juhuslikult valida.
Kolmandas valikulises nimetatud
parameetris k saame määrata elementide loendi
kordamiseks. See võimaldab
suurendada määratud elementide
valimise tõenäosust. Pange tähele, et
meetodi kolmas parameeter on lisatud alates
Pythoni versioonist 3.9.
Süntaks
import random
random.sample(järjestus, elementide_arv, [k=kordus])
Näide
Võtame juhuslikud kolm elementi loendist:
lst = [1, 2, 3, 4, 5]
print(random.sample(lst, 3))
Koodi täitmise tulemus:
[2, 1, 5]
Näide
Proovime ka võtta juhuslike elementide valimi ennistist:
tpl = (1, 2, 3, 4, 5)
print(random.sample(tpl, 2))
Koodi täitmise tulemus:
[3, 2]
Näide
Samuti on võimalik valida elemente
järjestusest, mida genereerib
funktsioon range:
print(random.sample(range(0, 10), 3))
Koodi täitmise tulemus:
[0, 8, 9]
Näide
Nüüd võtame loendi ja kasutame
parameetrit counts, et määrata kordused
iga loendi elemendi jaoks. Meie
juhul, las esimene element kordub
kaks korda, teine - kolm, ja kolmas - neli
korda. Samuti on vaja määrata parameetri
k nimi elementide arvu väljastamiseks:
lst = [1, 2, 3]
print(random.sample(lst, counts=[2, 3, 4], k=3))
See kood on samaväärne järgnevaga:
lst = [1, 1, 2, 2, 2, 3, 3, 3, 3] # tegelikult selline loend
print(random.sample(lst, 3))
Näide
Nüüd proovime võtta elemente hulgast:
st = {1, 2, 3, 4, 5}
print(random.sample(st, 2))
Tagastatakse järgmine viga:
[5, 2]
DeprecationWarning: Sampling from a set deprecated
since Python 3.9 and will be removed in a subsequent version.
print(random.sample(st, 2))
See on seotud sellega, et alates Pythoni
versioonist 3.9 ei ole ette nähtud võimalust
võtta valimit hulgast.