Metoda sample modula random

Metoda sample modula random vrne naključni vzorec elementov iz zaporedja. V prvem parametru metode določimo zaporedje, v drugem parametru - število elementov, ki jih želimo izbrati naključno.

V tretjem neobveznem poimenovanem parametru k lahko določimo seznam elementov za ponovitev. To omogoča povečanje verjetnosti vzorčenja določenih elementov. Upoštevajte, da je tretji parameter metode dodan šele od različice Python 3.9.

Sintaksa

pythonimport random

random.sample(zaporedje, število elementov, [k=ponovitev])

Primer

Vzemimo naključne tri elemente iz seznama:

pythonlst = [1, 2, 3, 4, 5]
print(random.sample(lst, 3))

Rezultat izvajanja kode:

python[2, 1, 5]

Primer

Poskusimo tudi vzeti vzorec naključnih elementov iz terke:

pythontpl = (1, 2, 3, 4, 5)
print(random.sample(tpl, 2))

Rezultat izvajanja kode:

python[3, 2]

Primer

Prav tako je mogoče izbirati elemente iz zaporedja, ki ga generira funkcija range:

pythonprint(random.sample(range(0, 10), 3))

Rezultat izvajanja kode:

python[0, 8, 9]

Primer

Vzemimo sedaj seznam in s pomočjo parametra counts določimo ponovitve za vsak element iz seznama. V našem primeru, naj se prvi element ponovi dvakrat, drugi - trikrat, tretji pa - štiri krat. Prav tako je potrebno določiti ime parametra k za izpis števila elementov:

pythonlst = [1, 2, 3]
print(random.sample(lst, counts=[2, 3, 4], k=3))

Ta koda je enakovredna naslednji:

pythonlst = [1, 1, 2, 2, 2, 3, 3, 3, 3] # dejansko takšen seznam
print(random.sample(lst, 3))

Primer

Poskusimo sedaj vzeti elemente iz množice:

pythonst = {1, 2, 3, 4, 5}
print(random.sample(st, 2))

Vrnila se nam bo naslednja napaka:

error[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))

To je povezano z dejstvom, da od različice Python 3.9 ni več možnosti jemanja vzorcev iz množice.

Glejte tudi

  • metoda choice modula random,
    ki vrne naključni element iz zaporedja
  • metoda random modula random,
    ki vrne psevdonaključno število