Random модулінің sample әдісі
random модулінің sample әдісі
тізбектен кездейсоқ элементтерді таңдауды
қайтарады. Әдістің бірінші параметрінде
тізбекті көрсетеміз, екінші параметрінде -
кездейсоқ түрде таңдағымыз келетін элементтердің
санын көрсетеміз.
Үшінші міндетті емес атаулы параметрде
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 нұсқасынан бастап
жиыннан таңдау алу мүмкіндігі қарастырылмағандығына
байланысты.