cython路径难以编译pyx-pxd文件的工作版本

2024-04-27 00:01:41 发布

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

我在cython中有3个文件代表2个类:

1. ../src/cython/class1.pyx
2. ../src/cython/class1.pxd
3. ../src/cython/class2.pyx

我想将在class1中定义的类导入到class2中,以便能够对自定义类使用cython类型。在

class2中,如果像这样导入Class1,则无法编译:

^{pr2}$

class2中,如果像下面这样导入Class1,我可以编译,但在执行时出现错误No module named 'src.cython.class1'

from class1 cimport Class1

我正在从../运行setup.py

这个问题被标记为可能是一个完全不同的问题的重复。我得到这些错误只是因为我错过了cython文件夹中的__init__.py。在


Tags: 文件pysrc类型定义错误代表cython
1条回答
网友
1楼 · 发布于 2024-04-27 00:01:41

目录结构应如下所示:

  1. ../src/cython/class1.pyx
  2. ../src/cython/__init__.pxd
  3. ../src/cython/class1.pxd
  4. ../src/cython/class2.pyx

pyx类:

from class1 cimport Class1

在设置.py应具有:

^{pr2}$

“no module”错误是因为目录名与扩展名不匹配,而且目录名需要定义为包。在

__init__.pxd相当于cimport__init__.py。在

相关问题 更多 >