0

我有一个运行良好的 Python 程序。当我将程序转移到另一台机器上并尝试在那里运行时,我收到以下错误消息:

Traceback (most recent call last):
  File "program1.py", line 3, in <module>
    import scipy.spatial as sp
  File "/usr/lib/python2.6/dist-packages/scipy/spatial/__init__.py", line 7, in <module>
    from ckdtree import *
  File "numpy.pxd", line 30, in scipy.spatial.ckdtree (scipy/spatial/ckdtree.c:6087)
ValueError: numpy.dtype does not appear to be the correct type object

这仅仅是新机器没有安装正确的模块或类似的结果吗?

谢谢!


运行代码的计算机:Python - 2.7.3 Numpy - 1.7.1 Scipy - 0.12.0

产生上述错误消息的计算机:Python - 2.6.5 Numpy - 1.5.1 Scipy - 0.7.0

当然理想情况下它们是相同的,但我不能真正更改第二台机器上的版本。是否可以确定导致问题的版本?

4

2 回答 2

1

前段时间我遇到过这样的问题。正在搞乱 virtualenv 并得到与您类似的错误。很可能是因为版本。某些模块可能会发生冲突。

于 2013-08-29T13:45:41.417 回答
1

要知道错误来自哪里,使用第一台机器降级,numpy、scipy和python。尝试不同的组合以重现相同的错误。

我建议在您的开发机器上使用与您需要部署的机器上相同的版本。这样你就不会遇到类似的问题了。

您可能想使用 pip 和 virtualenv 以便此项目的配置不会影响您的其余设置

于 2013-08-29T13:52:04.640 回答