32位模块如何在64位Python上运行?

时间:2014-05-14 16:56:27

标签: python python-2.7 32bit-64bit

我在64位Win7机器上使用带有32位Python2.7版本的inspyred库编写了一个遗传算法程序。在生成总体时,程序在使用高达1959044K的内存时停止运行。

我在本网站上已经阅读了很多问题,据我所知,这是因为操作系统对32位程序的上限为2GB。所以我试图切换到64位Python并安装我正在使用的64位版本的模块,遗憾的是除了一个模块之外,所有模块都无法在64位平台上运行。

我还在另一个问题中按照建议安装了pywin32但是也没有帮助。这个模块不是标准的Python库,我在下面粘贴了它。我得到的错误信息是:

import AoN
ImportError: DLL load failed: %1 is not a valid Win32 application.

我的理解是64位Python无法识别32位模块。我也在这里阅读:http://effbot.org/zone/python-compile.htm关于编译源代码,但是我已经编译了64位的源代码,但是这也没有帮助,因为它继续给出错误。

最后,我在解释器路径中粘贴了模块的目录路径,但这也没有帮助。

有没有办法让这个模块在64位Python上运行? 请任何人解释编译源代码的过程,如果这可以帮助我?

1 个答案:

答案 0 :(得分:6)

答案很简单 - 它无法奏效。进程是32位或64位,就这么简单。因此,如果一个模块不能以64位运行,除了重新编译64位模块之外,还有一个选项是将它具有的任何目的委托给以32位运行的第二个进程,就这样做。这可能是也可能不实际,具体取决于模块的实际任务。