在Python中,可以使用Cython或ctypes等工具來將Python代碼封裝為動態鏈接庫(DLL)。
使用Cython封裝為動態鏈接庫:
pip install cython
安裝Cython。.pyx
文件,編寫需要封裝的Python代碼。setup.py
文件,用于構建和編譯Cython代碼。python setup.py build_ext --inplace
編譯Cython代碼,并生成動態鏈接庫文件。使用ctypes封裝為動態鏈接庫:
.py
文件,然后使用ctypes.util
模塊中的find_library
函數來查找并加載動態鏈接庫。ctypes.cdll.LoadLibrary
函數加載動態鏈接庫,然后使用加載的庫進行函數調用。下面是一個使用Cython封裝為動態鏈接庫的示例:
.pyx
文件(例如example.pyx
),編寫需要封裝的Python代碼:def add(a, b):
return a + b
setup.py
文件,用于構建和編譯Cython代碼:from distutils.core import setup
from Cython.Build import cythonize
setup(
ext_modules=cythonize("example.pyx")
)
python setup.py build_ext --inplace
編譯Cython代碼,并生成動態鏈接庫文件。現在,你可以在其他的Python程序中加載并調用該動態鏈接庫了:
import example
result = example.add(3, 4)
print(result) # 輸出: 7
這樣,你就成功將Python代碼封裝為動態鏈接庫,并可以在其他的Python程序中使用了。