Python 导入错误 : No module named psycopg2

标签 python django psycopg

我正在尝试在 CentOS 5.8 系统上使用 PostgreSQL 安装 Django。

它最初有 Python 2.4,我添加了 remi 存储库来安装 Python 2.6。这很有效,而且我似乎都在工作;如果我输入“python”,它就是 2.4 版本;如果我输入 python2.6,它就是 2.6 版本。

当我尝试运行 python2.6 manage.py runserver 时,出现错误:

Error: No module named psycopg

从 Python 命令行:

Python 2.6.8 (unknown, Nov  7 2012, 14:47:34)
[GCC 4.1.2 20080704 (Red Hat 4.1.2-52)] 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 -c 'import sys; print sys.path'
['', '/usr/lib/python2.6/site-packages', '/var/lib/pgsql/.local/lib/python/site-packages', '/var/lib/pgsql/.local/lib/python', '/usr/local/browsershots-read-only/shotserver/shotserver04', '/usr/lib/python24.zip', '/usr/lib/python2.4', '/usr/lib/python2.4/plat-linux2', '/usr/lib/python2.4/lib-tk', '/usr/lib/python2.4/lib-dynload', '/usr/lib/python2.4/site-packages', '/usr/lib/python2.4/site-packages/Numeric', '/usr/lib/python2.4/site-packages/gtk-2.0']

看起来我有一个 2.4 和 2.6 互连的困惑系统。

如果我找到 psycopg,我会在 2.4 站点包中获得一个共享对象:

/usr/lib/python2.4/site-packages/psycopgmodule.so

并且仅在 2.6 中提供源。

我做错了什么?

最佳答案

IMO 你应该看看 virtualenv .这将帮助您创建一个隔离环境,您可以在其中安装自己的软件包。

程序是:

  • 安装虚拟环境
  • 初始化环境(例如使用source ... 命令)
  • 创建一个新环境(使用默认选项将创建一个干净的 AFAIK)
  • 使用pip安装psycopg

HTH

关于Python 导入错误 : No module named psycopg2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14211161/

相关文章:

python - 验证datefield,以便它不会在Django中使用将来的日期?

python - psycopg 在错误的 python 中 - Ubuntu

Python 的 win32api 只打印到默认打印机

python - utc字符串到unix时间转换python

python - 循环更新帧时的 LineCollection 动画

python - 从 Python 中的模块导入特定函数的要点

python - 数据库错误: no such table: django_template

Django Rest框架使用泛型查看组织