Windows11下已安装requests仍报ModuleNotFoundError问题求助
确认Python与pip的对应关系
执行python --version和pip --version,检查两者的安装路径是否一致。Windows多用户环境下,常出现pip包安装到A用户的Python目录,但代码调用的是B用户的Python解释器的情况。用where python和where pip查看所有存在的Python/pip路径,明确对应关系。用目标Python的pip重新安装
如果发现pip和运行代码的Python不匹配,直接通过目标Python的-m pip参数安装:- 运行
python -m pip install --upgrade requests(确保此python是你执行代码时用的解释器) - 若存在多个Python版本,可指定完整路径,例如
C:\Users\你的用户名\AppData\Local\Programs\Python\Python311\python.exe -m pip install requests
- 运行
检查多用户的包安装路径
Windows每个用户的Python包默认存放在C:\Users\用户名\AppData\Local\Programs\Python\PythonXX\Lib\site-packages,系统级包在C:\Program Files\PythonXX\Lib\site-packages。如果用管理员用户安装了包,但切换到普通用户运行代码,需确认当前用户的Python解释器能访问对应包目录,或在当前用户下重新安装。验证包路径是否在Python搜索路径中
执行pip show requests获取Location字段的路径,然后在Python交互环境中运行:import sys print(sys.path)若
Location路径不在sys.path中,可临时添加路径(sys.path.append("包路径")),或重新安装包到Python能识别的目录。确认虚拟环境状态
即使之前检查过虚拟环境,也要确保运行代码时未激活未安装requests的虚拟环境。在命令行执行deactivate退出虚拟环境后,再测试import requests。
内容的提问来源于stack exchange,提问作者gottago

