pyodbc导入错误:DLL加载失败:%1 不是有效的Win32应用程序
我刚接触Python,对它的各种功能感到很惊奇。我正在尝试让别人写的代码正常运行。不幸的是,那个人现在不在这里,我无法直接向他请教。我现在只想让他代码中的导入部分正常工作,但它无法导入pyodbc。
我下载并运行了一个叫做pyodbc-3.0.7.win32-py2.7.exe的安装程序。这个安装程序在我的C:\Python27\ArcGIS10.2\Lib\site-packages目录下放了一些文件。然后,我把C:\Python27\ArcGIS10.2\Lib\site-packages添加到了我的pythonpath环境变量中。我通过导入sys模块并打印sys.path来检查它是否添加成功,结果如下:
>>> import sys
>>> print sys.path
['', 'C:\\Python27\\Lib\\idlelib', 'C:\\Python27\\ArcGIS10.2\\Lib\\site-packages', 'C:\\Windows\\system32\\python27.zip', 'C:\\Python27\\DLLs', 'C:\\Python27\\lib', 'C:\\Python27\\lib\\plat-win', 'C:\\Python27\\lib\\lib-tk', 'C:\\Python27', 'C:\\Python27\\lib\\site-packages']
接着我输入import pyodbc,结果如下:
>>> import pyodbc
Traceback (most recent call last):
File "<pyshell#2>", line 1, in <module>
import pyodbc
ImportError: DLL load failed: %1 is not a valid Win32 application.
我打开了路径浏览器,找到了pyodbc.pyd文件。
2 个回答
0
你需要安装一个叫做 pyodbc
的东西,这个东西要和你电脑上安装的64位或32位的Python版本相匹配。你可以在这里下载这个非官方的安装包:http://www.lfd.uci.edu/~gohlke/pythonlibs/#pyodbc
4
这可能是因为你在64位的Python上尝试导入32位的库,或者反过来。