Swig python
时间: 2023-11-30 20:42:59 浏览: 98
cmake_c++_python_swig
SWIG是一个用于连接C/C++和其他高级编程语言的开源软件工具。它可以将C/C++函数封装为Python可调用的代码,以在Python中使用底层的C/C++功能。这对于连接C/C++库和Python应用程序非常有用,帮助我们在Python中享受C/C++的高性能和扩展能力。
以下是使用SWIG封装C函数并在Python中调用的示例:
1.编写C函数并保存为example.c文件:
```c
int add(int a, int b) {
return a + b;
}
```
2.创建SWIG接口文件example.i:
```c
%module example
%{
#include "example.c"
%}
int add(int a, int b);
```
3.使用SWIG生成封装代码:
```
swig -python example.i
```
4.编译生成的代码:
```
gcc -c example.c example_wrap.c -I/usr/include/python3.6
gcc -shared example.o example_wrap.o -o _example.so
```
5.在Python中调用封装函数:
```python
import example
result = example.add(2, 3)
print(result) # 输出:5
```
阅读全文