60 of 151 menu

Метод sample на модула random

Методът sample на модула random връща случайна селекция от елементи от последователност. В първия параметър на метода посочваме последователността, във втория параметър - броя елементи, които искаме да изберем случайно.

В третия незадължителен именуван параметър k можем да зададем списък от елементи за повторение. Това позволява да се увеличи вероятността за селектиране на зададени елементи. Обърнете внимание на това, че третият параметър на метода е добавен само започвайки от версия Python 3.9.

Синтаксис

import random random.sample(последователност, брой елементи, [k=повторение])

Пример

Нека получим случайни три елемента от списъка:

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

Резултат от изпълнението на кода:

[2, 1, 5]

Пример

Нека също така опитаме да вземем селекция от случайни елементи от кортеж:

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

Резултат от изпълнението на кода:

[3, 2]

Пример

Също така може да се избират елементи от последователност, която се генерира от функцията range:

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

Резултат от изпълнението на кода:

[0, 8, 9]

Пример

Сега нека вземем списък и с помощта на параметъра counts назначим повторения за всеки елемент от списъка. В нашия случай, нека първият елемент се повтори два пъти, вторият - три, а третият - четири пъти. Също така е необходимо да се посочи името на параметъра k за извеждане на броя елементи:

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

Този код е еквивалентен на следния:

lst = [1, 1, 2, 2, 2, 3, 3, 3, 3] # фактически такъв списък print(random.sample(lst, 3))

Пример

Сега нека опитаме да вземем елементи от множество:

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

Ще ни бъде върната следната грешка:

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

Това е свързано с факта, че от версия Python 3.9 не е предвидена възможност да се взема селекция от множество.

Вижте също

  • метод choice на модула random,
    който връща случаен елемент от последователност
  • метод random на модула random,
    който връща псевдослучайно число
Български
AfrikaansAzərbaycanবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiPortuguêsRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Ние използваме бисквитки за работата на сайта, анализ и персонализация. Обработката на данни се извършва в съответствие с Политика за поверителност.
приемам всички настройки отхвърляне