导入时应用包装器(python)

导入时应用包装器(python),python,numpy,Python,Numpy,有没有办法让一个完整的模块“矢量化” 我所拥有的: python模块,具有许多接受浮点/返回浮点的函数 \uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu在该模块中正确定义 我想做的是: 具有numpy浮点向量 从my_模块导入*直接导入命名空间 调用return eval('function\u from\u my\u module(my\u numpy\u vector,…) 当然,现在的问题是,我必须将nump

有没有办法让一个完整的模块“矢量化”

我所拥有的:

  • python模块,具有许多接受浮点/返回浮点的函数
  • \uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu
    在该模块中正确定义
我想做的是:

  • 具有
    numpy
    浮点向量
  • 从my_模块导入*
    直接导入命名空间
  • 调用
    return eval('function\u from\u my\u module(my\u numpy\u vector,…)
当然,现在的问题是,我必须将
numpy.vectorize
(这对于我的用例非常有效)应用到所有来自函数模块的函数上


自动导入时使函数“矢量化”的最佳方法是什么(请记住,
\uuuuuu all\uuuu
已经定义)?

为什么应用
vectorize
首先是一个问题?当然,应用
numpy.vectorize
只要写下来就没有问题。但是,我的观点是有一些代码行将应用
numpy.vectorize
自动在
\uuuuuuuuuuuu\uuuuu
中的所有元素上,这可能是一个相当长的列表。您可以使用模块上的
dir
执行此操作,从中提取可调用函数,然后重新分配它们的符号,可能使用
eval
。这看起来像是一个黑客攻击,我看不出有什么理由不简单地对函数应用
矢量化
修饰符。没有必要从
dir(…)中提取某些内容
因为所有要导入的函数名都已经在
\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu
中指定。所以我可以迭代它并使用
\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu(这基本上是一个使用ctypes的包装器)。