Являются ли значения, возвращаемые numpy.empty (), случайными или нет? - PullRequest
0 голосов
/ 12 февраля 2019

https://docs.scipy.org/doc/numpy-1.15.0/reference/generated/numpy.empty.html

гласит: «Возврат нового массива заданной формы и типа без инициализации записей».Q1: что делать "без инициализации записей".значит здесь.Q2: выходные данные, возвращаемые np.empty (), являются случайными числами?Я использую приведенный ниже код для генерации массива и получаю одинаковые выходные данные, так как они могут быть случайными числами?

импортировать numpy как np

print (np.empty ([2,2]))

1 Ответ

0 голосов
/ 12 февраля 2019

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

пусто, в отличие от нулей, не устанавливает значения массива на ноль и, следовательно, может быть незначительно быстрее.С другой стороны, он требует, чтобы пользователь вручную установил все значения в массиве, и должен использоваться с осторожностью.

Так что, если у вас нет определенного варианта использования, используйте zeros иличто-то другое.Также отмечу, что обычно Python не позволяет вам просто объявить переменную без ее инициализации, поэтому такое поведение может показаться странным.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...