90%的ModuleNotFoundError: No module named 'redis'源于环境错配、源未切换或文件名冲突;应优先检查解释器路径、切换清华镜像源、避免命名redis.py,并确认Redis服务已启动。

直接结论:90%的 ModuleNotFoundError: No module named 'redis' 不是没装,而是装错了环境、源没换、或者文件名冲突了。
pip install redis 一直超时或报 SSL 错误
国内直连 PyPI 基本不可用,ReadTimeoutError 或 CERTIFICATE_VERIFY_FAILED 是典型表现。别反复重试,先切镜像源。
- 临时解决:加
-i参数指定清华源,比如pip install redis -i https://pypi.tuna.tsinghua.edu.cn/simple - 永久生效:Windows 在
C:\Users\用户名\pip\pip.ini写入[global]\nindex-url=https://pypi.tuna.tsinghua.edu.cn/simple;macOS/Linux 编辑~/.pip/pip.conf - SSL 报错(如
SSLError: certificate verify failed)可临时绕过:加--trusted-host参数,例如pip install redis --trusted-host pypi.tuna.tsinghua.edu.cn --trusted-host files.pythonhosted.org
pip install redis 显示成功,但 import redis 仍报错
最常见原因是 Python 解释器和 pip 不是同一个环境,尤其在用 PyCharm、VS Code、conda 或虚拟环境时。
- 检查当前 Python 路径:
which python(macOS/Linux)或where python(Windows),再运行python -m pip list | grep redis看是否真装上了 - PyCharm 用户必须确认:Settings → Project → Python Interpreter 里选中的解释器,和你终端里
python指向的是同一个;否则你在终端装的库,PyCharm 根本看不见 - 刚升级过 pip?执行
python -m pip install --upgrade pip后,再用python -m pip install redis,避免 pip 自身缓存/路径错乱
import redis 成功,但 redis.Redis() 报 AttributeError
这是新手高频翻车点:Python 文件名不能叫 redis.py。
- 一旦你建了个叫
redis.py的脚本,Python 导入时会优先加载它,而不是第三方redis库,导致redis.Redis找不到 - 删掉当前目录下的
redis.py和自动生成的redis.pyc或__pycache__/目录,再试 - 验证方法:在 Python 交互式环境中输入
import redis; print(redis.__file__),输出路径如果指向你自己的.py文件,就坐实了这个问题
装完能 import,但连接 Redis 服务时报 ConnectionRefusedError
ModuleNotFoundError 解决了,不等于 Redis 就能用——这只是客户端装好了,Redis 服务本身可能根本没启动。
- 错误信息类似:
ConnectionRefusedError: [WinError 10061] 由于目标计算机积极拒绝,无法连接 - Windows 用户:去 MicrosoftArchive/redis 下载
Redis-x64-3.2.100.zip,解压后双击运行redis-server.exe(不是redis-cli.exe) - Linux/macOS 用户:确认已安装 Redis 服务(如
sudo apt install redis-server或源码编译安装),然后运行sudo systemctl start redis或redis-server - 检查端口:默认是
6379,确保代码里redis.Redis(port=6379)和实际服务监听端口一致
真正容易被忽略的点是环境隔离和命名冲突——你以为在装库,其实 Python 正在偷偷导入你自己写的同名文件;你以为 pip 成功了,其实它装进了系统 Python,而你的 IDE 用的是虚拟环境。动手前先敲两行命令确认解释器和包位置,比盲目重装十次都管用。


















