将Python代码转移到另一台机器 - 停止工作

时间:2013-08-29 13:20:42

标签: python

我有一个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

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

2 个答案:

答案 0 :(得分:1)

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

答案 1 :(得分:1)

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

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

您可能想要使用pip和virtualenv,因此此项目的配置不会影响您的其他设置