#include <Python.h>
static PyObject* py_veripy(PyObject* self, PyObject* args){
/* BODY */
return Py_BuildValue("i", 1);
}
// Bind Python function names to our C functions
static PyMethodDef veripy_methods[] = {
{"veripy", py_veripy, METH_VARARGS},
{NULL, NULL}
};
// Python calls this to let us initialize our module
extern "C" void initveripy(){
(void) Py_InitModule("veripy", veripy_methods);
}
我已经编译了它并创建了一个.so文件。我想在我的一个Django应用程序中使用这个库,但是我不知道该把这个库保存在我的目录中的什么地方。显然,我试着把它和代码放在一起,但它似乎找不到它。我发现了与我的情况类似的{a1}教程,但是其中的C++代码中没有包含python。h。请帮忙。在
我认为你应该创造一个设置.py文件,这样就可以编译库并将其放在某个地方。在
例如,这里有一个设置.py我用于个人项目的文件:
这将生成一个“build/”文件夹,但您当然可以在the official documentation page上找到有关setuptools的更多信息。在
由于我们看不到库的目录结构,因此似乎您必须在模块中缺少
import
条件,例如,将__init__.py
放在适当的位置或为输出模块编写正确的扩展名。在好吧,既然您已经通过将.so文件放在
views.py
文件旁边的app文件夹中解决了您的问题,下面就为您提供一些小技巧。在如果由于任何原因Python解释器无法识别.so模块,比如
filename.so
,则需要在其旁边放置一个filename.py
文件,其中包含以下内容这将确保正确导入
filename.so
喜欢使用Cython与C/C++或FORTRAN接口。是跨平台的。如您所知,.so文件仅适用于linux/mac。在
相关问题 更多 >
编程相关推荐