MacBook Pro M1在VS Code中导入matplotlib/nltk遇ImportError
解决方案
1. 切换VS Code的Python解释器到arm64版本
- 打开VS Code,点击左下角状态栏的Python版本号,弹出解释器列表
- 选择基于arm64架构的Python解释器(比如系统自带的
/usr/bin/python3,或Homebrew安装的arm64版本,或conda创建的arm64环境) - 验证:在VS Code终端执行
python3 -c "import platform; print(platform.machine())",输出arm64即为正确
2. 确保虚拟环境是arm64架构
如果使用虚拟环境,必须基于arm64的Python创建:
- 创建新虚拟环境:
/usr/bin/python3 -m venv my_arm_env - 激活环境:
source my_arm_env/bin/activate - 重新安装依赖:
pip install numpy matplotlib
3. 关闭VS Code的Rosetta兼容模式
如果VS Code以x86_64架构运行(通过Rosetta),会导致终端环境不匹配:
- 关闭VS Code,右键应用图标 → 显示简介
- 取消勾选「使用Rosetta打开」,重启VS Code
- 验证终端架构:执行
uname -m,输出arm64即可
4. 强制编译适配arm64的依赖包
若以上步骤无效,强制从源码编译安装:
- 激活正确的arm64虚拟环境后,执行:
pip install --force-reinstall --no-binary :all: numpy matplotlib
内容的提问来源于stack exchange,提问作者Sumit
相关产品推荐
相关产品推荐

