У меня есть такая функция:
def f(x):
A =np.array([[0, 1],[0, -1/x]]);
return A
Если я использую скаляр, я получу:
>>x=1
>>f(x)
array([[ 0., 1.],
[ 0., -1.]])
, и если я буду использовать массив в качестве входных данных, я получу :
>>x=np.linspace(1,3,3)
>>f(x)
array([[0, 1],
[0, array([-1. , -0.5 , -0.33333333])]], dtype=object)
На самом деле я хотел бы получить список массивов, а именно: A = [A_1, A_2, ..., A_n]
Сейчас меня не волнует если это массив массивов или список, содержащий несколько массивов. Я знаю, что могу сделать это, используя для l oop в х. Но я думаю, что, возможно, есть другой способ сделать это, и, возможно, более эффективный.
Поэтому вывод, который я хотел бы, был бы примерно таким:
>>x=np.linspace(1,3,3)
>>r=f(x)
array([[[0, 1],[0,-1]],
[[0, 1],[0,-0.5]],
[[0, 1],[0,-0.33333]]])
>>r[0]
array([[0, 1],[0,-1]])
или что-то вроде
>>x=np.linspace(1,3,3)
>>r=f(x)
[array([[0, 1],[0,-1]]),
array([[0, 1],[0,-0.5]]),
array([[0, 1],[0,-0.33333]])]
>>r[0]
array([[0, 1],[0,-1]])
Спасибо