使用ctypes模块可以很方便的调用DLL(也包括Linux下的so等文件)中的函数,下面将给出一个演示的例子。
首先创建一个简单的DLL,直接拷贝自网上的某篇教程
(Lib.h)
#ifndef LIB_H
#define LIB_H
extern "C" int __declspec(dllexport)add(int x, int y);
#endif
(Lib.cpp)
#include "Lib.h"
int add(int x, int y)
{
return x + y;
}
编译为TestDLL.dll。
然后建立一个Python文件TestDLLMain.py测试:
from ctypes import *
dll = CDLL("TestDLL.dll")
print dll.add(1, 1)
结果:2
简单得不能再简单了!
2.5以上的DLL后缀名要改为.pyd