前提了解
为了实验的准确性,在全过程使用的python环境版本都为同一版本
easycython和cython编译为pyd文件的不同在于,easycython编译的原始文件后缀为pyx,cython编译的原始文件为py
1.cython
1.1原始文件
def ZWHCythonTest():print("Z_W_H_")
def ZWHCythonTest1():print("cython测试")
1.2下载cython模块
pip install cython
1.3准备setup.py文件
#!/usr/bin/env python
# -*- coding: utf-8 -*-# here put the import lib
from distutils.core import setup
from Cython.Build import cythonizesetup(ext_modules=cythonize(["ZWHcython.py"]))
1.4开始编译
1.5修改文件名称
修改前
修改后
删除之前文件,防止引入错误,如下图无相关的py文件
注意修改后的文件名称必须要与原始文件名称相同,只是后缀不同,如果名称修改不相同的话,回出现以下错误
1.6主文件调用
代码
import sys, os
base_path = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
sys.path.append(base_path)
import ZWHcython
ZWHcython.ZWHCythonTest()
ZWHcython.ZWHCythonTest1()
结果如下
2.easycython
2.1原始文件
def ZWHeasycythonTest():print("Z_W_H_")
def ZWHeasycythonTest1():print("easycython测试")
2.2下载easycython模块
pip install easycython
2.3修改文件后缀
将后缀py修改为pyx
原始
修改后
2.4开始编译
2.5修改文件名称
原始
修改后
删除相关的py和pyx文件
2.6主文件调用
代码
import sys, os
base_path = os.path.dirname(os.path.dirname(os.path.abspath(__file__)))
sys.path.append(base_path)
import ZWHeasycython
ZWHeasycython.ZWHeasycythonTest()
ZWHeasycython.ZWHeasycythonTest1()
结果
参考文献
2021-6-30:如何将python文件编译为pyd文件_将py变成pyd-CSDN博客
【Python小技巧】加密又提速,把.py文件编译为.pyd文件(类似dll函数库),你值得拥有!-CSDN博客