环境
macOS 11.4 明明已经执行了:
pip3 install requests
依然报错。
这就让我想到电脑上好像有存在两个pip3.
报错:import requests ModuleNotFoundError: No module named ‘requests’
解决办法执行以下代码
/Library/Frameworks/Python.framework/Versions/3.9/bin/pip3 install requests
成功解决了。
原因分析: python3我这电脑上有两个版本,猜测一个是系统自带的。一个是我使用brew因依赖关系自动安装的。
- 环境变量中的是
/usr/local/opt/python@3.9/bin/pip3
- 脚本执行中调用的却是
/Library/Frameworks/Python.framework/Versions/3.9/bin/pip3
如下测试可以看出,我的python3与pip3路径不匹配。
itkey@ycmit: ~ $ which python3 [16:43:26]
/usr/local/bin/python3
itkey@ycmit: ~ $ ls -all /usr/local/bin/python3 [16:43:29]
lrwxr-xr-x 1 itkey admin 69 12 22 2020 /usr/local/bin/python3 -> ../../../Library/Frameworks/Python.framework/Versions/3.9/bin/python3
itkey@ycmit: ~ $ which pip3 [16:43:32]
/usr/local/bin/pip3
itkey@ycmit: ~ $ ls -all /usr/local/bin/pip3 [16:43:54]
lrwxr-xr-x 1 itkey admin 35 4 24 08:25 /usr/local/bin/pip3 -> ../Cellar/python@3.9/3.9.4/bin/pip3
斩草除根
既然上面的原因分析已经看出了,我的path中python3与pip3不匹配,那就把它们修改的匹配即可。
环境变量中把brew放在前面
#python3 使用brew
export PATH="/usr/local/Cellar/python@3.9/3.9.4/bin:$PATH"
参考:
https://stackoverflow.com/questions/17309288/importerror-no-module-named-requests