标签: python numpy
我编写了以下示例代码,我对using namespace std;在这种情况下如何工作有点好奇。
using namespace std;
np.frompyfunc
我想它会以某种方式"变平"函数中的IF语句并生成矢量化代码,但我无法在numpy代码库中找到相应的代码。
答案 0 :(得分:0)
frompyfunc无法分析您的函数或隐式向量化其执行。它的实现基本上是一个for循环,重复调用你的函数。
frompyfunc
for
Here是frompyfunc本身实现的链接,尽管您感兴趣的大部分内容都不会发生在那里。 Here是用于从Python对象创建的ufunc的ufunc内部循环之一的链接;我相信frompyfunc将在源代码中使用它或其上方的一个循环。您可以看到重复使用PyEval_CallObject来调用Python可调用。
PyEval_CallObject