没有名为scipy.spatial.ckdtree的模块

时间:2018-04-27 04:09:28

标签: python scipy cx-freeze

我创建了一个python文件,并使用cs_freeze将其转换为exe文件。 当我运行exe时,我收到以下错误。

File "C:\Python36\lib\site-packages\scipy\spatial\__init__.py", line 94, in <module> from .ckdtree import *
 ModuleNotFoundError: No module named 'scipy.spatial.ckdtree' 

我在空间中检查了 init .py。它是从ckdtree.py导入的。但是空间文件夹中没有名为ckdtree的文件。我在同一个文件夹中有一个名为“ckdtree.cp36-win32.pyd”的文件。

我正在使用32位python的Windows 7上运行。

我从pypi下载了whl文件并安装了scipy。

为什么我会收到此错误。为什么我的安装缺少ckdtree.py。

1 个答案:

答案 0 :(得分:1)

ckdtree是一个用kdtree编写的C版本,用Cython编写。没有文件ckdtree.pyckdtree.cp36-win32.pyd是二进制编译模块。您应该可以像使用.py文件一样使用它。

您的导入如何?

import scipy.spatial.ckdtree

尝试

from scipy.spatial import ckdtree