我在与其他Python包分开的包中创建并构建了一个Cython文件,该项目具有以下目录结构:
cython_code
cython_file.pyx
setup.py
program
main.py
Cython 的安装是使用 PyCharm 完成的。 使用命令完成构建:
python setup.py build_ext --inplace
并且使用相应的 .pyd、.c 文件和构建文件夹创建了构建。
我还尝试将 .pyx 文件放在项目根文件夹中并在那里进行编译,但我通过简单的 import 遇到了同样的问题(它找不到 cython 模块)。
这是我的设置.py:
from setuptools import setup
from Cython.Build import cythonize
import numpy
setup(
ext_modules=cythonize('my_cython.pyx'),
include_dirs=[numpy.get_include()]
)
请帮我解决这个问题...
.pyx 文件是用于构建实际扩展代码文件的源文件(扩展名为 .so 或 .dll); Python 在运行时不使用它。要使您的包可在 Python 中导入,您需要 (1) 运行
pip install .
并实际安装构建工件,或者 (2) 找到构建的 .so 文件并确保它位于您的 PYTHONPATH 上。
对于初始项目,您可以按照 Cython 文档中的步骤进行操作。