我正在尝试在 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/