MacOS系统下Matplotlib无法导入,报TypeError错误求助
解决MacOS下Matplotlib导入失败:TypeError: copy()缺少E和X参数
嘿,我来帮你搞定这个问题!从你的报错回溯能看出来,锅根本不在Matplotlib本身——是它依赖的pyparsing库出了版本兼容问题,和你的Python 3.7不匹配,才导致调用copy()时参数不对。
下面是一步步的解决步骤,都是新手友好的操作:
1. 先检查当前pyparsing的版本
打开终端,输入这条命令看看你装的pyparsing是啥版本:
pip3 show pyparsing
如果显示的版本是3.0.0及以上,那百分百是版本太高了——Python 3.7不支持pyparsing 3.x的部分语法。
2. 把pyparsing降级到兼容版本
在终端执行这条命令,强制安装Python 3.7能兼容的2.4.7版本:
pip3 install pyparsing==2.4.7 --force-reinstall
--force-reinstall会直接覆盖掉现在的高版本,确保装的是指定的兼容版。
3. 验证问题是否解决
打开Python交互窗口,试试导入Matplotlib:
import matplotlib
要是没报错,那就是搞定啦!
为啥重装Matplotlib没用?
因为Matplotlib安装时会自动装满足它依赖要求的pyparsing版本,但你的Python 3.7太老,最新的Matplotlib会拉来不兼容的高版本pyparsing,所以单独重装Matplotlib还是会带上有问题的依赖,得手动降级才行。
小建议
如果你打算长期用Python 3.7,以后装库的时候最好指定兼容的版本范围;或者干脆升级到Python 3.8及以上的版本,能避免好多这种版本兼容的坑。
内容的提问来源于stack exchange,提问作者Koby Robles
相关产品推荐
相关产品推荐

