Windows11下VSCode已装numpy仍报ModuleNotFoundError求助
我按VS Code Python教程创建了hello.py,代码如下:
import numpy as np msg = "Roll a dice!" print(msg) print(np.random.randint(1,9))
点击VSCode顶部运行按钮执行时,一直报错:
line 1, in <module> import numpy as np ModuleNotFoundError: No module named 'numpy'
执行py -m pip install numpy后,提示numpy已安装(版本2.1.3),但有一堆无效包警告:
py -m pip install numpy
WARNING: Ignoring invalid distribution ~ (C:\Python312\Lib\site-packages) WARNING: Ignoring invalid distribution ~ip (C:\Python312\Lib\site-packages) WARNING: Ignoring invalid distribution ~ (C:\Python312\Lib\site-packages) WARNING: Ignoring invalid distribution ~ip (C:\Python312\Lib\site-packages)
Requirement already satisfied: numpy in c:\python312\lib\site-packages (2.1.3)
WARNING: Ignoring invalid distribution ~ (C:\Python312\Lib\site-packages) WARNING: Ignoring invalid distribution ~ip (C:\Python312\Lib\site-packages) WARNING: Ignoring invalid distribution ~ (C:\Python312\Lib\site-packages) WARNING: Ignoring invalid distribution ~ip (C:\Python312\Lib\site-packages)
但终端里跑python -c "import numpy; print(numpy.__version__)"能正常输出2.1.3,说明numpy确实装好了,求解决VSCode识别不到的办法。
可行解决步骤
核对VSCode用的Python解释器
- 看VSCode左下角显示的Python版本,点击它打开解释器列表
- 选和终端
python命令对应的那个(也就是C:\Python312路径下的Python)
清理pip的无效包
那些带~的无效包可能干扰识别,先删了它们:# 先列出所有带~的无效包 pip list --format=freeze | findstr /r "^~" # 根据输出卸载,比如如果是~ip和~,就执行: pip uninstall -y ~ip ~之后重新安装numpy确保状态正常:
pip install --upgrade --force-reinstall numpy检查VSCode的运行配置
- 按Ctrl+Shift+D打开运行调试面板
- 点"创建launch.json文件",选Python环境
- 在生成的launch.json里,确保
python字段指向正确的路径:"python": "C:\\Python312\\python.exe"
重启VSCode
做完上面的操作后,重启VSCode再运行脚本,应该就能正常识别numpy了
内容的提问来源于stack exchange,提问作者likejudo

