Python2.7 找不到 psycopg2 模块

psycopg2 module cannot be found by Python2.7

我通过 pip 安装了 psycopg2,但我的程序找不到它。 所以,我再次尝试通过 pip 安装 psycopg2:

user@ubuntu:~/Desktop/progFolder$ sudo pip install psycopg2
Requirement already satisfied (use --upgrade to upgrade): psycopg2 in /usr/local/lib/python2.7/dist-packages
Cleaning up...

然后我尝试使用导入它的程序:

user@ubuntu:~/Desktop/progFolder$ python myProg.py
Traceback (most recent call last):
  File "myProg.py", line 6, in <module>
    import psycopg2
ImportError: No module named psycopg2

我试过直接导入 python:

user@ubuntu:~/Desktop/progFolder$ python
Python 2.7.5 (default, Nov  9 2014, 14:14:12) 
[GCC 4.8.2] on linux2
Type "help", "copyright", "credits" or "license" for more information.
>>> import psycopg2
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named psycopg2

所以我打印了我的 python 路径。

>>> import sys
>>> print sys.path
['', '/usr/local/lib/python27.zip', '/usr/local/lib/python2.7', '/usr/local/lib/python2.7/plat-linux2', '/usr/local/lib/python2.7/lib-tk', '/usr/local/lib/python2.7/lib-old', '/usr/local/lib/python2.7/lib-dynload', '/usr/local/lib/python2.7/site-packages']

并注意到该路径确实包含 psycopg2 的路径。

psycopg2 in /usr/local/lib/python2.7/dist-packages

所以,我不知道为什么会这样。任何帮助将不胜感激。

更新: 我做了

>>>help()
>>>modules

并且 psycopg2 未在其他模块中列出。 (这对我没有帮助,但可能会帮助你帮助我)

从您的 python 路径打印来看, 似乎没有包含 /usr/local/lib/python2.7/dist-packages。您可以通过以下一种方式添加它:

sys.path.insert(0, "/usr/local/lib/python2.7/dist-packages")

你的 pip 看起来不错(也就是说,它是 system/default 那个)。然而,您的 Python 可执行文件并不是 14.04 LTS 默认附带的(例如,在我的 14.04 系统上,它是 /usr/bin/python)。 Python 是你自己安装的吗?然后您还需要安装(和使用)相应的 pip。 (通常,Python 会附带 pip 安装,但显然在这种情况下,它没有。)

pip 可以从它的 installation instructions.

安装起来相当简单

虽然首先要验证

  • 您确实 /usr/local/bin/python 自己安装了。也就是说,它没有随您安装的其他软件一起提供,并且决定在那里安装 Python。

  • 你想使用 /usr/local/bin/python(我猜这是 Python 2.7 的更新版本;截至 2015 年,默认的 14.04 LTS 似乎是 2.6.7 -08-03).