Что такое функция random.choice() в Python

Выбор случайного элемента — повторяющаяся задача в Python, и, к счастью, он поддерживает модуль random, предоставляющий функции для генерации случайных строк, чисел, целых чисел и элементов из последовательности.

Метод random.choice() Python

Python random.choice() — это встроенный метод, который возвращает случайный элемент из непустой последовательности. Функция random.choice() в Python принимает последовательность, которая может быть списком, массивом, строкой, словарем, кортежем или набором.

Python Random Choice метод

Чтобы найти случайный элемент из последовательности, используйте метод random.choice(). Вы также можете выбрать случайный пароль из списка слов и случайный элемент из доступных данных.

Синтаксис

Параметры:

Здесь последовательность может быть списком, строкой, кортежем или любым итерируемым объектом.

Возвращаемое значение

Функция random.choice() возвращает один элемент из последовательности. Если мы передадим пустой список или последовательность в функцию random.choice(), это вызовет IndexError: Невозможно выбрать из пустой последовательности.

Пример

Вывод

Здесь мы импортировали случайный модуль, а затем определили список. Вы можете видеть, что каждый раз, когда мы запускаем вышеуказанную программу, мы получаем разные случайные числа из списка.

Метод random.choice() выбирает случайный элемент из списка каждый раз, когда мы запускаем код.

Выбор нескольких вариантов из списка

Метод random.choice() возвращает только один элемент из списка. Чтобы случайным образом выбрать более одного элемента из списка или набора, я рекомендую вместо этого использовать random.sample() или random.choices().

Вывод

Мы хотим выбрать четыре случайных элемента из списка и сделать это, и мы использовали метод random.choices().

Мы передали список и параметр k=4, размер выборки, который говорит, что нам нужны четыре случайных элемента из списка.

Случайный выбор Python без повторения

Python random.sample()

random.sample() — это встроенная функция модуля random в Python, которая возвращает список элементов определенной длины, выбранных из последовательности, т. е. список, кортеж, строку или набор. Используется для случайной выборки без замены.

Используйте метод random.sample(), если вы хотите выбрать несколько случайных элементов из списка без повторений или дубликатов.

Исключения

Если размер выборки, т. е. k, больше размера последовательности, возникает ValueError.

Вывод:

В этом примере вы можете видеть, что значение k больше, чем размер последовательности; именно поэтому он вызовет исключение с именем ValueError.

Python random.choices()

Python random.choices() был добавлен в Python 3.6 для случайного выбора n элементов из списка, но функция random.choices() может повторять элементы.

Метод random.choices() в основном используется для реализации взвешенного случайного выбора, чтобы мы могли выбирать элементы из списка с разной вероятностью.

Случайный выбор из словаря Python

Метод случайного модуля Python random.choice() не принимает словарь, и вам необходимо преобразовать словарь в список, прежде чем передавать его в функцию random.choice().

Давайте получим случайную пару словарей ключ-значение, используя метод random.choice().

Вывод:

Выбор случайного элемента из кортежа в Python

Чтобы получить случайный элемент из кортежа в Python, используйте функцию random.choice().

Вывод:

Сначала мы импортировали модуль random, определили кортеж и передали его функции random.choice(), чтобы получить случайное значение из кортежа и вывести его на консоль.

Python random choice из набора

Чтобы получить случайный элемент из набора в Python, используйте метод random.choice(). Если мы передадим объект set напрямую в функцию выбора, то получим ошибку TypeError: объект set не поддерживает индексацию.

Используя метод random.choice(), мы не можем выбирать случайные элементы напрямую из набора, не копируя их в кортеж.

Вывод:

Случайный выбор Python в диапазоне целых чисел

Python range() генерирует целые числа между заданным начальным целым числом и конечным целым числом.

Вывод:

В этом примере мы использовали функцию range(), чтобы определить верхний и нижний пределы целых чисел и найти случайное число между пределом и включая его.

Каждый раз, когда мы запускаем приведенную выше программу, мы получаем разные целые числа, но это не нарушает верхний предел функции диапазона. Это потому, что он всегда дает случайное число в пределах лимита.

Python random choice из логических значений

Чтобы выбрать случайное логическое значение из True или False, используйте функцию random.choice(). Такой сценарий: подбрось монетку.

Вывод:

Нахождение случайного элемента многомерного массива

Чтобы найти случайный элемент из многомерного массива, используйте функцию numpy.random.choice(), чтобы выбрать случайный элемент из многомерного массива.

Сначала мы находим случайную строку из двумерного массива, а затем, найдя двумерную строку, мы извлекаем случайное число из этой строки.

Вывод:

В этом примере мы использовали функцию numpy arange() для создания чисел от 0 до 8, а затем использовали метод reshape() для преобразования его в двумерный массив, а затем распечатали массив.

Затем мы использовали метод np.random.randint(), который находит случайную строку из двумерного массива, а затем использует функцию selection(), чтобы найти случайное число из строки.

Оцените статью

Автор статей и разработчик, делюсь знаниями.

Программирование на Python