为何安装flask-pymongo后仍触发ModuleNotFoundError错误?
ModuleNotFoundError: No module named 'flask_pymongo'的常见原因 Python解释器环境不匹配
VS Code可能没使用你安装模块的那个Python环境。比如你用pip3把模块装到了系统Python3,但VS Code选的是虚拟环境、Anaconda环境或者其他版本的Python。
检查方法:在VS Code终端运行which python3(Mac/Linux)或where python3(Windows)获取路径;代码里加一行import sys; print(sys.executable),运行后对比两个路径是否一致。
解决:在VS Code右下角切换到对应解释器,或者激活安装模块的环境后再运行代码。虚拟环境未激活
如果用了虚拟环境(比如venv、pipenv),安装模块时没激活环境,模块会装到全局环境,而代码运行在虚拟环境里就找不到。
解决:激活对应虚拟环境后重新安装:# Mac/Linux激活venv source venv/bin/activate # Windows cmd激活venv venv\Scripts\activate.bat # 安装模块 pip install flask-pymongopip3与Python版本不对应
部分系统里pip3对应某个Python3版本,但你可能装了多个Python3(比如3.8、3.10),pip3把模块装到了其中一个,而代码用的是另一个版本。
解决:直接用目标Python版本的pip安装,比如:python3.10 -m pip install flask-pymongo把
3.10换成你实际使用的Python版本号。VS Code终端环境异常
有时候VS Code打开的终端没继承系统环境变量,导致Python识别不到已安装的模块路径。
解决:重启VS Code,或者重新打开终端确保环境加载正确。模块安装不完整或损坏
即便重装过,也可能某次安装出错导致文件损坏。
解决:彻底卸载后再重装,避免使用缓存包:pip3 uninstall -y flask flask-pymongo pip3 install flask flask-pymongo --no-cache-dir
内容的提问来源于stack exchange,提问作者Anurag Kumar

