Почему эта функция возвращает float?
func = lambda x: 1.
x = np.linspace(0,1,10)
func(x).shape
Результат
AttributeError: 'float' object has no attribute 'shape'
Я ожидаю следующее поведение:
func = lambda x: 1. + 0*x
x = np.linspace(0,1,10)
func(x)
array([1., 1., 1., 1., 1., 1., 1., 1., 1., 1.])
Как получить ожидаемыйрезультат без использования лямбда-функции (т.е. без необходимости писать func = lambda x: 1. + 0*x
)?
Идея состоит в том, что пользователь передает эту функцию другой функции для дальнейшей оценки в сетке.Я не могу ожидать, что пользователь закрасит постоянную функцию как 1 + 0*x
.Что я должен делать?