Задать массив случайным образом питон

Модуль random на примерах — Изучение методов генерации случайных данных

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

Список методов модуля random в Python:

Метод Описание
seed() Инициализация генератора случайных чисел
getstate() Возвращает текущее внутренне состояние (state) генератора случайных чисел
setstate() Восстанавливает внутреннее состояние (state) генератора случайных чисел
getrandbits() Возвращает число, которое представляет собой случайные биты
randrange() Возвращает случайное число в пределах заданного промежутка
randint() Возвращает случайное число в пределах заданного промежутка
choice() Возвращает случайный элемент заданной последовательности
choices() Возвращает список со случайной выборкой из заданной последовательности
shuffle() Берет последовательность и возвращает ее в перемешанном состоянии
sample() Возвращает заданную выборку последовательности
random() Возвращает случайное вещественное число в промежутке от 0 до 1
uniform() Возвращает случайное вещественное число в указанном промежутке
triangular() Возвращает случайное вещественное число в промежутке между двумя заданными параметрами. Также можно использовать параметр mode для уточнения середины между указанными параметрами
betavariate() Возвращает случайное вещественное число в промежутке между 0 и 1, основываясь на Бета-распределении, которое используется в статистике
expovariate() Возвращает случайное вещественное число в промежутке между 0 и 1, или же между 0 и -1 , когда параметр отрицательный. За основу берется Экспоненциальное распределение, которое используется в статистике
gammavariate() Возвращает случайное вещественное число в промежутке между 0 и 1, основываясь на Гамма-распределении, которое используется в статистике
gauss() Возвращает случайное вещественное число в промежутке между 0 и 1, основываясь на Гауссовом распределении, которое используется в теории вероятности
lognormvariate() Возвращает случайное вещественное число в промежутке между 0 и 1, основываясь на Логнормальном распределении, которое используется в теории вероятности
normalvariate() Возвращает случайное вещественное число в промежутке между 0 и 1, основываясь на Нормальном распределении, которое используется в теории вероятности
vonmisesvariate() Возвращает случайное вещественное число в промежутке между 0 и 1, основываясь на распределении фон Мизеса, которое используется в направленной статистике
paretovariate() Возвращает случайное вещественное число в промежутке между 0 и 1, основываясь на распределении Парето, которое используется в теории вероятности
weibullvariate() Возвращает случайное вещественное число в промежутке между 0 и 1, основываясь на распределении Вейбулла, которое используется в статистике
Читайте также:  Rsa шифрование python код

Цели данной статьи

Далее представлен список основных операций, которые будут описаны в руководстве:

  • Генерация случайных чисел для различных распределений, которые включают целые и вещественные числа с плавающей запятой;
  • Случайная выборка нескольких элементов последовательности population ;
  • Функции модуля random;
  • Перемешивание элементов последовательности. Seed в генераторе случайных данных;
  • Генерация случайных строки и паролей;
  • Криптографическое обеспечение безопасности генератора случайных данных при помощи использования модуля secrets. Обеспечение безопасности токенов, ключей безопасности и URL;
  • Способ настройки работы генератора случайных данных;
  • Использование numpy.random для генерации случайных массивов;
  • Использование модуля UUID для генерации уникальных ID.

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

Как использовать модуль random в Python

Для достижения перечисленных выше задач модуль random будет использовать разнообразные функции. Способы использования данных функций будут описаны в следующих разделах статьи.

Источник

Как заполнить массив случайными числами в Python

Массив — одна из основных структур данных в Python. Его элементы хранятся в одном месте и к ним можно получить доступ по индексу. Для реализации такой структуры данных используется библиотека numpy. Также имитировать массив в Python может встроенный тип данных список (list). В данной статье мы обсудим, как заполнить массив случайными числами.

Мы всегда можем создать массив любой размерности и иногда, для некоторых вычислений, его нужно заполнить произвольными значениями. Для этого в библиотеке numpy реализован модуль random, который генерирует случайные числа.

Как заполнить массив случайными числами при помощи функции numpy.random.randint()

Как уже говорилось ранее, в библиотеке numpy есть модуль random , который может помочь в генерации случайных чисел для массивов numpy. При помощи функции randint() можно сгенерировать массив нужного размера и заполнить его случайными числами.

Нам нужно запомнить три основных параметра, которые принимает данная функция. Первые два являются предельными значениями для случайных чисел. Функция будет выбирать случайное число именно из этого диапазона. Третий параметр определяет форму требуемого массива.

import numpy as np arr = np.random.randint(0,10,10) print(*arr) # Результат: # 3 8 1 0 4 2 4 7 0 3

В данном примере мы сгенерировали 10 случайных чисел и заполнили ими одномерный массив длиной 10.

Как заполнить массив случайными числами при помощи функции numpy.random.Generator.integers()

Функция numpy.random.Generators предлагает альтернативный способ генерации случайных чисел. Она использует дополнительный BitGenerator для создания случайных битов и управления их состоянием. Для его инициации используется конструктор numpy.random.default_rng() .

После этого мы можем использовать функцию numpy.random.Generator.integers() для генерации случайных целых чисел и заполнения ими массива в Python.

Как и в предыдущем случае, нам нужно будет задать параметры диапазона и формы массива.

import numpy as np g = np.random.default_rng() arr = g.integers(0,5,10) print(arr) # Результат: # [0 2 1 1 1 0 1 1 3 0]

Заполнение массива случайными числами при помощи функции random.randint()

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

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

import random arr = [random.randint(1,5) for _ in range(10)] print(arr) # Результат: # [4, 2, 5, 3, 2, 2, 3, 3, 4, 2]

Заключение

В данной статье мы разобрали различные методы заполнения массива случайными числами в Python. По сути, мы создавали массивы со случайными числами. Для этого мы использовали массивы numpy и списки Python.

Для массивов numpy мы рассмотрели два способа заполнения. В первом случае использовалась традиционная функция numpy.random.randint() , которая генерирует массив numpy заданной длины, заполненный случайными числами в заданном диапазоне. А во втором случае мы использовали относительно новый модуль numpy.random.Generators , который обеспечивает дополнительное состояние для управления и генерации случайных битов.

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

Источник

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