Windows10虚拟环境已安装激活flask仍提示No module named "flask"怎么办
Windows 10虚拟环境运行项目提示
No module named "flask"的常见原因 1. 运行项目使用的Python解释器与激活的虚拟环境不匹配
- 即使虚拟环境已激活,若IDE(如VS Code、PyCharm)未手动切换到对应虚拟环境的Python解释器,或是手动执行脚本时调用了全局Python,都会触发该报错
- 验证方法:激活虚拟环境后在终端执行
where python,查看输出的第一个路径是否为blockchain-env/scripts/python.exe,同时执行pip list确认列表中存在flask包
2. Flask安装不完整
- 存在flask.exe可执行文件不代表模块包安装完整,安装过程中断、虚拟环境路径包含中文/特殊字符都可能导致
blockchain-env/Lib/site-packages下缺少flask模块文件夹 - 解决方法:执行
pip uninstall flask后重新执行pip install flask,完成后检查site-packages目录下是否存在flask文件夹
3. Python模块搜索路径未包含虚拟环境依赖目录
- 若启动项目时的工作目录层级错误,会导致Python默认的模块搜索路径
sys.path未加载虚拟环境的site-packages目录 - 验证方法:在报错的
__init__.py开头添加如下代码运行,查看输出的路径列表中是否包含blockchain-env/Lib/site-packages
import sys print(sys.path)
4. Windows系统Python别名冲突
- Windows 10默认开启的应用执行别名会将
python.exe、python3.exe指向微软应用商店,即使激活虚拟环境,调用python3启动项目时仍可能触发该问题 - 解决方法:进入Windows设置→应用→应用执行别名,关闭Python相关的别名开关即可
5. 虚拟环境未实际激活
- PowerShell默认的执行策略会禁止运行虚拟环境的激活脚本
activate.ps1,即使终端执行了激活命令,也可能未实际生效,可检查终端前缀是否显示(blockchain-env)标识 - 解决方法:以管理员身份运行PowerShell,执行
Set-ExecutionPolicy RemoteSigned选择确认后,重新激活虚拟环境即可
内容的提问来源于stack exchange,提问作者Shyann
相关产品推荐
相关产品推荐

