все 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Сообщить о неточности