60 of 151 menu

Metoda sample a modulului random

Metoda sample a modulului random returnează o selecție aleatorie de elemente dintr-o secvență. În primul parametru al metodei specificăm secvența, în al doilea parametru - numărul de elemente, pe care dorim să le selectăm aleatoriu.

În al treilea parametru opțional numit k putem seta o listă de elemente pentru repetare. Acest lucru permite creșterea probabilității de selecție a anumitor elemente. Rețineți că al treilea parametru al metodei a fost adăugat doar începând cu versiunea Python 3.9.

Sintaxă

import random random.sample(secvență, număr_de_elemente, [k=repetare])

Exemplu

Să obținem trei elemente aleatorii dintr-o listă:

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

Rezultatul executării codului:

[2, 1, 5]

Exemplu

Să încercăm de asemenea să luăm o selecție de elemente aleatorii dintr-un tuplu:

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

Rezultatul executării codului:

[3, 2]

Exemplu

De asemenea, se pot selecta elemente din secvența generată de funcția range:

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

Rezultatul executării codului:

[0, 8, 9]

Exemplu

Acum să luăm o listă și cu ajutorul parametrului counts să atribuim repetări pentru fiecare element din listă. În cazul nostru, primul element să se repete de două ori, al doilea - de trei, iar al treilea - de patru ori. De asemenea, este necesar să specificăm numele parametrului k pentru afișarea numărului de elemente:

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

Acest cod este echivalent cu următorul:

lst = [1, 1, 2, 2, 2, 3, 3, 3, 3] # practic această listă print(random.sample(lst, 3))

Exemplu

Acum să încercăm să luăm elemente dintr-o mulțime:

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

Vom primi următoarea eroare:

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

Aceasta se datorează faptului că începând cu versiunea Python 3.9 nu este prevăzută posibilitatea de a lua selecții dintr-o mulțime.

Vezi și

  • metoda choice a modulului random,
    care returnează un element aleatoriu dintr-o secvență
  • metoda random a modulului random,
    care returnează un număr pseudoaleatoriu
Română
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Folosim cookie pentru funcționarea site-ului, analiză și personalizare. Prelucrarea datelor are loc în conformitate cu Politica de confidențialitate.
acceptă toate configurează respinge