Mac(m芯片)安装numpy和matplotlib包在vs code里报错的一些原因

这里报错有很多原因,我弄了好几天,看了很多博客,也试了好多方法,这里按照情况简单到复杂,可以自己逐步查看属于哪种问题,温馨提示,最好使用python3.7小于python3.11的版本,不然有可能安不了Matplotlib

一 、查看vs code能否正常运行py文件

在vs code里新建一个py文件,随便输入一些代码print(hello,world)运行,可能会报错,因为在vs code里是直接调用python,但是在mac系统里要使用python3调用,这一步就是让python的效果等同于python3,在终端里输入以下语句

echo \"alias python=/usr/bin/python3\" >> ~/.zshrc

注意一般在Mac里安装的python是这个路径,但是最好看一下自己要使用的python是不是这个路径,如果不是就更改。这个路径的查找可以在vs code里打开一个py文件,按com+shift+p,会弹出命令行,选择python:select interpreter,点击后可以看到你电脑里所有的python解释器和它们的路径。

回车运行,再输入

source ~/.zshrc

回车,返回vs code看是否能正常运行,再看看能不能导入numpy包
,还是不行就看第二步。

二 、检查是否安装了numpy包

在终端中输入以下语句,如果安装成功应该会显示numpy的安装路径

pip show numpy

如果没有安装就输入

pip install numpy

进行安装,再输入

python
import numpy as np
print(np.sqrt(4))

在终端退出python,可以使用control+d,如果能成功运行,就说明已经安装成功。返回vscode看看能不能正常导入,一般到这里应该都可以解决了,如果还是没解决并且报错显示ModuleNotFoundError: No module named ‘numpy’,应该是numpy并没有安装到你所使用的python编译器对应的位置。这个我是重新conda里下载了一个python,具体在三中。

三 、安装matplotlib包报错

如果vs code里是显示ImportError: dlopen(/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_c_internal_utils.cpython-311-darwin.so, 0x0002): tried: ‘/Library/Frameworks/Python.framework/Versions/3.11/lib/python3.11/site-packages/matplotlib/_c_internal_utils.cpython-311-darwin.so’ (mach-o file, but is an incompatible architecture (have ‘x86_64’, need ‘arm64e’ or ‘arm64’)), 类似的错误(我的是这样的,不过可以导入numpy,但是导入matplotlib就是这样,呜呜呜),大概意思是下载的matplotlib包不是arm架构的(m芯片适用)版本,这是因为在终端里直接下载的numpy和matplotlib都默认是最新版的,但是最新版本的matplotlib(我记得是1.26.xx,不是很确定),没有arm的版本,可以在终端中输入以下代码

pip install matplotlib for arm64

如果安装不了大概是因为使用的python的版本不对,我用的是python3.11,不能安,上面好像写了只能在python3.7到小于3.11的版本上使用,懒得删python3.11了,我就去下载了miniconda,在这个上面又去下载了python3.9,我的办法很麻烦但是可以解决,下面就是用miniconda下载的过程
在官网下载miniconda链接: link
在终端里输入,验证是否安装成功(返回版本号)

conda --version

下载python3.9,这里创建了一个py39的环境

conda create -n py39 python=3.9

激活这个环境

conda activate py39

验证python版本

python --version

下载matplotlib,因为是另一个解释器,所有还要在下一次numpy,直接把matplotlib换成numpy即可

conda install matplotlib

安装之后可以在进入python环境验证是否可以正常导入,终端中输入这个,不报错就可以退出了

python3
import numpy as np
import matplotlib.pyplot as plt

现在呢可以返回标题一处,设置更改路径,如果你以前没有设置过第一步的,可以直接按第一步执行,如果设置过了就按以下步骤
在终端中输入

vim ~/.zshrc

进入之前那个文本里,h是让光标向左,k是向上,j是向下,l是向右,调光标只能在还没开始输入的时候用,按大写R可以进行复写,进入复写的时候,只能从你开始的位置开始写,不能跳,大概是这样自己可以试一试(我也是第一次用vim,惭愧),写完一行就可以退出按esc,然后按:,再按q,就可以退出了,如果还需更改就可以重复上述操作。
完成之后再打开VScode应该就可以了
对了,如果你的conda里不止一个python,在终端前那个括号里的不是你要用的python环境名,就要先激活你要用的那个环境再安装,不然就会安错位置(把py39改成你的python的环境名,当时我安python3.9的时候,它是默认叫这个名的)

conda activate py39

好了,就是这样,我是参加数学建模要用这些包,没想搞得这么麻烦,但是我确实没找到什么其他方法,都怪我怎么安了这么多个版本的python,完全没意识到,而且大一菜狗真的对配置环境一点都不懂,就是随手记录一下,有什么不对的,请大佬指出,我一定积极更改学习。

  • 64
    点赞
  • 55
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值