导入Cython.pyx-fi时发生导入错误

2024-05-07 04:33:47 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个python文件,它使用以下代码导入多个包:

from pyzoltan.core.carray import UIntArray, DoubleArray
from pyzoltan.core import zoltan

前两个导入,即UIntArrayDoubleArray成功导入,但第三个导入即zoltan给出{}。在

pyzoltan/core目录包含以下文件:

^{pr2}$

问题是由于缺少zoltan.mako和{}或其他什么原因造成的?在


Tags: 文件代码fromcoreimport目录mako原因
2条回答

你缺少了pyzoltan/核心/佐尔坦文件。在

.pyx文件可以由Cython编译成.c文件,该文件可以由C编译器编译为.so文件(在Windows上为.pyd文件)。在

a number of ways来构建Cython代码。通常/推荐的方法是编写distutils/setuptoolssetup.py文件。内容可能如下所示:

from distutils.core import setup
from Cython.Build import cythonize

setup(
    ext_modules=cythonize("zoltan.pyx")
)    

然后您可以通过运行

^{pr2}$

但你真的不需要自己写设置.py. 如果您安装了core dependencies(并确保它们满足版本要求),然后按照installation instructions进行操作,那么zoltan应该已经准备就绪。在

您有carray.so,但没有{}。无论生成哪个构建过程,前者也应该能够生成后者(即通过在zoltan.pyxzoltan.pxd上运行cython)。在

相关问题 更多 >