简述
更新pip时,循环重复出现的两个报错:
ModuleNotFoundError: No module named 'pip'
No module named pip.__main__; 'pip' is a package and cannot be directly executed
尝试了各种帖子上的方法,最后通过彻底删除pip原先卸载残留,然后用get-pip.py重新安装的pip.
遇到问题的情况:我的机子上原先安装了Anaconda,安装的时候自带安装了python以及pip模块。几个月前应该是遇到了一些问题,uninstall了pip然后又重新install了pip,导致今天安装Keras的后端引擎Tensorflow时遇到了pip相关的一些列问题,具体步骤以及bug shooting过程如下:
参考官方Keras的安装文档
https://keras.io/#installation
在安装Keras之前,需要先安装其后端引擎之一:TensorFlow,Theano或CNTK。 根据建议我打算使用TensorFlow后端。于是,参考TensorFlow的安装文档 ,如下图。
命令执行以及报错
根据安装文档,我从Anaconda Prompt窗口执行命令:
(base) PS C:\Users\Gab*> python -m pip install --upgrade pip
报错:
ERROR: Could not install packages due to an EnvironmentError: [WinError 5] 拒绝访问。: 'd:\\anaconda3\\scripts\\pip.exe'
Consider using the `--user` option or check the permissions.
那就根据提示,尝试加--user选项:
(base) PS C:\Users\Gab*> python -m pip install --user --upgrade pip
报错:
Script file 'D:\Anaconda3\Scripts\pip-script.py' is not present.
参考网上各路大神的解决方案,用 easy_install pip,这个命令会在Anaconda3\Scripts路径下生成pip3.exe、pip.exe等等文件
(base) PS D:\Anaconda3\Scripts> easy_install pip
Searching for pip
Best match: pip 19.1.1
Adding pip 19.1.1 to easy-install.pth file
Installing pip-script.py script to D:\Anaconda3\Scripts
Installing pip.exe script to D:\Anaconda3\Scripts
Installing pip3-script.py script to D:\Anaconda3\Scripts
Installing pip3.exe script to D:\Anaconda3\Scripts
Installing pip3.7-script.py script to D:\Anaconda3\Scripts
Installing pip3.7.exe script to D:\Anaconda3\Scripts
Using d:\anaconda3\lib\site-packages
Processing dependencies for pip
Finished processing dependencies for pip
(base) PS D:\Anaconda3\Scripts> pip install --user --upgrade pip
报错:
ModuleNotFoundError: No module named 'pip'
网上还有一个解决方法是用命令 python -m ensurepip,仍然不奏效。
解决方案
最后在stackoverflow上找打了我这种情况的解决方案。之前我卸载python并将其重新安装到电脑时,出现错误。 应该是以前的pip版本并未完全删除,当我们尝试使用python -m pip安装包导入时,它实际上是在尝试调用先前的版本。要解决此问题,请先手动删除以下位置的pip文件夹:
C:\Users\username\pip
C:\Users\username\AppData\Local\pip
C:\Users\username\AppData\Local\Programs\Python\Python**\lib\site-packages\pip***
C:\Python**\pip
然后下载get-pip.py;最后,切换到保存改文件的路径,运行:
python get-pip.py
此过程应改能重新安装pip并解决问题。
致谢网络上的各位大佬!