Я использовал NumPy np.empty()
, чтобы получить массив со случайным значением, но он не работает, когда я определяю нормальный np.array()
раньше.
Вот две функции, которые я использовал:
import numpy as np
def create_float_array(x):
return np.array([float(x)])
def get_empty_array():
return np.empty((), dtype=np.float).tolist()
Просто чтобы проверить get_empty_array()
, я написал в консоли:
>>> get_empty_array() # Should return a random float
>>> 0.007812501848093234
Я был доволен результатом, поэтому я попробовал это, но это не сработалотак, как я хотел:
>>> create_float_array(3.1415) # Create a NumPy array with the float given
>>> array([3.1415])
>>> get_empty_array() # Should return another random value in a NumPy array
>>> 3.1415
Я не слишком уверен, почему создание массива NumPy влияет на метод np.empty()
от предоставления случайного значения.По-видимому, он дает то же значение, что и значение в np.array (), в данном случае 3.1415
.
Обратите внимание, что я решил оставить форму np.empty()
равной нулю для целей тестирования., но на самом деле это будет иметь некоторую форму.
Наконец, я знаю, что это неправильный способ получения случайных значений, но мне нужно использовать np.empty()
в моей программе, но я точно не знаюпочему такое поведение происходит.