有两个好处:
-
产品代码保护,so文件不可读
-
计算能力加速,本质上编译过程为python -> c -> so文件,相当于动态语言转换为静态语言,程序执行能力和计算能力有所提升
编译为so文件后比原始python代码执行时间快2ms左右。
from distutils.core import setup
from Cython.Build import cythonize
# 打包核心代码为so文件
setup(ext_modules=cythonize("test.py"))