1

我遵循了本指南:https ://github.com/ericflo/twissandra

Pycassa 已安装,包括所有依赖项。一切运行顺利,但运行python manage.py sync_cassandra给出消息:

ImportError: No module named pycassa

所以我运行 Python 交互式解释器并输入import pycassa,该命令运行成功,没有错误。

跑步

import sys
sys.path

将给出消息:

['', '/home/z/twiss/lib/python2.6/site-packages/setuptools-0.6c11-py2.6.egg', '/home/z/twiss/lib/python2.6/site-packages/pip-0.8.2-py2.6.egg', '/home/z/twiss/lib/python2.6', '/home/z/twiss/lib/python2.6/plat-linux2', '/home/z/twiss/lib/python2.6/lib-tk', '/home/z/twiss/lib/python2.6/lib-old', '/home/z/twiss/lib/python2.6/lib-dynload', '/usr/lib/python2.6', '/usr/lib/python2.6/plat-linux2', '/usr/lib/python2.6/lib-tk', '/home/z/twiss/lib/python2.6/site-packages', '/usr/local/lib/python2.6/dist-packages/pycassa-1.0.5-py2.6.egg', '/usr/local/lib/python2.6/dist-packages/virtualenv-1.5.1-py2.6.egg', '/usr/local/lib/python2.6/site-packages', '/usr/local/lib/python2.6/dist-packages', '/usr/lib/python2.6/dist-packages', '/usr/lib/python2.6/dist-packages/PIL', '/usr/lib/python2.6/dist-packages/gst-0.10', '/usr/lib/pymodules/python2.6', '/usr/lib/python2.6/dist-packages/gtk-2.0', '/usr/lib/pymodules/python2.6/gtk-2.0']

site-packages在列表中。但我有点困惑,因为这是在虚拟环境中

我不知道发生了什么以及该怎么办

4

2 回答 2

2

尝试编辑 tweets/management/commands/sync_cassandra.py 以包含

import sys
print sys.path

在顶部。确保这包括 pycassa 所在的目录。例如,我在 twiss/lib/python2.6/site-packages 中有一个 pycassa 目录。

顺便说一句,ericflo 的 repo 已经过时了——在他接受一些拉取请求之前,你会想要使用这个版本。

于 2011-02-08T06:29:58.097 回答
0

可能缺少 pycassa 包,我会尝试以下操作,还建议将必要的包存储在需求文件中,并像这样利用冻结/安装。

要解决 pycassa 错误的第一个问题:

pip install pycassa

在此处输入图像描述

一旦你的 python 项目的所有需求都包含在内,将所需的包输出到 requirements.txt 中,就像 NodeJS 的 package.json 一样。

  • freeze:将当前包输出到 requirements.txt 文件中
  • 安装:从 requirements.txt 中安装所有需要的包到 Python 环境中
pip freeze > requirements.txt
pip install -r requirements.txt
于 2017-05-30T17:42:50.630 回答