我在cython中有3个文件代表2个类:
1. ../src/cython/class1.pyx
2. ../src/cython/class1.pxd
3. ../src/cython/class2.pyx
我想将在class1
中定义的类导入到class2
中,以便能够对自定义类使用cython类型。在
在class2
中,如果像这样导入Class1
,则无法编译:
在class2
中,如果像下面这样导入Class1
,我可以编译,但在执行时出现错误No module named 'src.cython.class1'
:
from class1 cimport Class1
我正在从../
运行setup.py
这个问题被标记为可能是一个完全不同的问题的重复。我得到这些错误只是因为我错过了cython
文件夹中的__init__.py
。在
目录结构应如下所示:
../src/cython/class1.pyx
../src/cython/__init__.pxd
../src/cython/class1.pxd
../src/cython/class2.pyx
pyx类:
在设置.py应具有:
^{pr2}$“no module”错误是因为目录名与扩展名不匹配,而且目录名需要定义为包。在
__init__.pxd
相当于cimport
的__init__.py
。在相关问题 更多 >
编程相关推荐