我安装了 IBM ILOG CPLEX Optimization Studio Community Edition 。
我有64位Windows 7。
我的python是Python 2.7.13 (v2.7.13:a06454b1afa1, Dec 17 2016, 20:42:59) [MSC v.1500 32 bit (Intel)] on win32
Cplex位于MYCPLEXHOME\cplex\python\2.7\x64_win64
之下。我在这个目录中python setup.py install
。
然后我这样做:
import cplex
但是我收到了这个错误:
Traceback (most recent call last):
File "<pyshell#0>", line 1, in <module>
import cplex
File "C:\Python27\lib\site-packages\cplex\__init__.py", line 41, in <module>
from . import _internal
File "C:\Python27\lib\site-packages\cplex\_internal\__init__.py", line 21, in <module>
from . import _list_array_utils
File "C:\Python27\lib\site-packages\cplex\_internal\_list_array_utils.py", line 14, in <module>
from . import _pycplex as CPX
File "C:\Python27\lib\site-packages\cplex\_internal\_pycplex.py", line 28, in <module>
_pycplex_platform = swig_import_helper()
File "C:\Python27\lib\site-packages\cplex\_internal\_pycplex.py", line 24, in swig_import_helper
_mod = imp.load_module('_pycplex_platform', fp, pathname, description)
File "C:\Python27\lib\site-packages\cplex\_internal\_pycplex_platform.py", line 23, in <module>
from cplex._internal.py27_cplex1270 import *
ImportError: DLL load failed: %1 is not a valid Win32 application.
我该如何解决这个问题?
答案 0 :(得分:1)
当我调用我的(旧的非主动使用的基于Windows的)python-distribution时,它输出的东西就像(因为基于Anaconda的发行版有点不同):
Python 3.4.4 |Continuum Analytics, Inc.| (default, Feb 16 2016, 09:54:04) [MSC v.1600 64 bit (AMD64)] on win32
如果不太确定,我将其视为:
on win32
MSC v.1600 64 bit (AMD64)
在您的情况下,它看起来就像您使用的是32位Python(MSC v.1500 32 bit (Intel)
)分布,它与基于64位的CPLEX接口混合使用。这不会奏效!
所以你的步骤是:
效果可能不简单,但我强烈推荐基于64位的Python(现在看起来更像是标准)!
(Erwin的评论速度有点快)
答案 1 :(得分:1)
使用CPLEX 12.7,Windows上没有32位安装程序。请在此处查看detailed system requirements。如果要使用32位Python,则必须使用旧版本(例如,CPLEX 12.6.3)。