Python Glossary English

все Python 3randomпонятие

random.choice

выборка

Возвращает случайный элемент из непустой последовательности (list, tuple, str). При пустой — IndexError.

Синтаксис

random.choice(seq)

choice умеет работать только с тем, что поддерживает индексацию и len: множество или генератор дадут TypeError, а словарь — KeyError (или, если ключи — числа 0..n-1, молча вернёт значение, а не ключ), поэтому их сначала оборачивают в list (list(d) даст случайный ключ). Вызовы независимы, поэтому подряд легко получить один и тот же элемент — если нужны разные, берите sample, а не choice в цикле.

Примеры

import random
random.seed(1)
print(random.choice([1,2,3,4,5]))  # → случайный элемент
print(random.choice('abcdef'))     # → случайный символ
faces = ['♠','♥','♦','♣']
print(random.choice(faces))  # → случайная масть
import random
print([random.choice(['heads', 'tails']) for _ in range(5)])  # → ? например ['tails', 'heads', 'tails', 'tails', 'heads']
print(random.choice(range(100)))  # → ? число от 0 до 99

См. также

Открыть в полном глоссарииdocs.python.orgСообщить о неточности