Python Cython库未加载父模块

Python Cython库未加载父模块,python,cython,python-import,Python,Cython,Python Import,我正在试用Cython,我编写了一个小模块进行编译。但是,当我编译它时,库被写入一个子目录。将该库从子目录中复制会中断导入,并显示以下消息: Traceback (most recent call last): File "driver.py", line 1, in <module> from sum_func import sum_func File "sum_func.pyx", line 1, in init cython_fail.sum_func

我正在试用Cython,我编写了一个小模块进行编译。但是,当我编译它时,库被写入一个子目录。将该库从子目录中复制会中断导入,并显示以下消息:

Traceback (most recent call last):
  File "driver.py", line 1, in <module>
    from sum_func import sum_func
  File "sum_func.pyx", line 1, in init cython_fail.sum_func
    from itertools import count
SystemError: Parent module 'sum_func' not loaded, cannot perform relative import
安装文件是教程中的直接副本:

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

setup(ext_modules=cythonize("sum_func.pyx"))
驱动程序只调用库模块

from sum_func import sum_func

print(sum_func(10))
print(sum_func(100))
print(sum_func(1000))

\uuuu init\uuuuu.py
文件是空的。

在删除所有不相关的代码以发布此问题的过程中,我发现了一个问题:
\uuuuu init\uuuuuuuuu.py
文件。如和中所述,一个
\uuuu init\uuuu.py
文件将使Cython将库编译成一个子文件夹。起初我没有找到这些问题,因为我在寻找导入错误消息,而不是库被写入子文件夹的事实

那很好,因为我并不真的需要
\uuuu init\uuuuu.py
文件。我认为这是该项目的旧版本遗留下来的。删除它解决了问题

from sum_func import sum_func

print(sum_func(10))
print(sum_func(100))
print(sum_func(1000))