python数组存储函数

2024-04-18 18:10:44 发布

您现在位置:Python中文网/ 问答频道 /正文

可能是N00b问题。

我是python新手,但我想知道是否可以将函数存储在数组中?我想做一个数组乘法,其中一个数组的值乘以另一个函数数组位置上的一个函数。或者实际上,第一个数组的值被插入到指定位置的函数中。这将创建一个新数组,其中的值是“乘法”的结果。

>>> import numpy as np
>>> a = [[1, 0], [0, 1]]
>>> b = [[f(x), g(x)], [(h(x), f(x)]]
>>> np.dot(a, b)
array([[0, 1],
   [2, 0]])

假设f(x)、g(x)和h(x)是定义函数。在这种情况下,python会说x没有定义。到目前为止我知道。但是,我不想说,例如f(a[0][1]),因为我想重用数组b,并且能够将函数放在数组中的随机位置上。

简而言之,我发现了三个问题:
-有没有一种已知的方法可以让数组的值是函数?
-如果不是,我应该重新定义数组函数还是为此编写一个新类?(如何解决这个问题?)
-如果可以创建函数数组,我可以在数组中动态填充“函数值”(用函数动态填充数组)还是只能是静态值?

比如说

b[0]=f(x)

是的,我真的想用python做这个。


Tags: 方法函数importnumpy定义asnp情况