ImportError:没有名为 redis 的模块

Posted

技术标签:

【中文标题】ImportError:没有名为 redis 的模块【英文标题】:ImportError: No module named redis 【发布时间】:2013-10-17 19:23:18 【问题描述】:

我已经使用sudo apt-get install redis-server 命令安装了 redis,但是当我运行我的 Python 程序时收到此错误: ImportError: No module named redis

知道出了什么问题,或者我是否也应该安装任何其他软件包?我使用的是 Ubuntu 13.04,我有 Python 2.7。

【问题讨论】:

pypi.python.org/pypi/redis 【参考方案1】:

我也遇到了同样的问题,错误是默认pip是'pip3',redis包安装在python3包下。

这不是特定于 redis 的问题,但如果您遇到这种情况,请尝试运行:

sudo pip2 install redis

【讨论】:

【参考方案2】:

我遇到了同样的问题,这就是我解决它的方法。检查您是否使用名为 dev 的 virtualenv,然后不要这样做

sudo pip install redis 

只是

pip install redis

这会将redis包安装在你自己的virtualenv而不是你的“完整”系统中,这一次你的redis包会从你的代码中找到。

【讨论】:

【参考方案3】:

要安装 redis-py,只需:

$ sudo pip install redis

或者(你确实应该使用 pip):

$ sudo easy_install redis

或来自来源:

$ sudo python setup.py install

开始

>>> import redis
>>> r = redis.StrictRedis(host='localhost', port=6379, db=0)
>>> r.set('foo', 'bar')
True
>>> r.get('foo')
'bar'

详情:https://pypi.python.org/pypi/redis

【讨论】:

我通过 pip 安装了 redis,它在我的控制台上运行良好。但是当我使用crontab或者jenkins运行时,又报错“ImportError: No module named redis” 你需要指定你正在使用的python的路径。 @harperkoo 你不应该在 pip 中使用 sudo

以上是关于ImportError:没有名为 redis 的模块的主要内容,如果未能解决你的问题,请参考以下文章

为啥 ImportError:没有名为 lightgbm 的模块

ImportError:没有名为瓶子的模块

ImportError:没有名为枚举的模块

ImportError:没有名为“appdirs”的模块

ImportError:没有名为 websocket 的模块

ImportError:没有名为“backports”的模块