1.新建一个py文件,myunit.py,里面的代码是:
class Adder:
def __init__(self, a, b):
self.a = a
self.b = b
def add(self):
return self.a + self.b
2.新建一个py文件,setup.py,里面的代码是:
# setup.py
from distutils.core import setup
from Cython.Build import cythonize
setup(ext_modules = cythonize(['myunit.py']))
3.在setup.py文件所在目录下执行命令:
python3 setup.py build_ext
打包成功过后,新增1个文件。
4.新建testSo.py,把第三步生成的so文件拷贝到根目录下,重命名为myunit.so。testSo.py代码如下:
import myunit
if __name__ == '__main__':
# 使用示例
adder1 = myunit.Adder(89, 5)
result = adder1.add()
print(result) #
5.结果截图,项目中已经没有最开始创建的myunit.py文件了。