ImportError:没有名为 pip 的模块
Posted
技术标签:
【中文标题】ImportError:没有名为 pip 的模块【英文标题】:ImportError: No module named pip 【发布时间】:2013-08-24 03:43:40 【问题描述】:操作系统:Mac OS X 10.7.5 Python 版本:2.7.5
我已经从https://pypi.python.org/pypi/setuptools 安装了带有ez_setup.py 的setuptools 1.0 然后我从https://pypi.python.org/pypi/pip/1.4.1下载pip.1.4.1 pkg。
在 iTerm 中运行 (sudo) python setup.py install
表明
running install
running bdist_egg running egg_info writing requirements to
pip.egg-info/requires.txt writing pip.egg-info/PKG-INFO writing
top-level names to pip.egg-info/top_level.txt writing dependency_links
to pip.egg-info/dependency_links.txt writing entry points to
pip.egg-info/entry_points.txt warning: manifest_maker: standard file
'setup.py' not found
reading manifest file 'pip.egg-info/SOURCES.txt' writing manifest file
'pip.egg-info/SOURCES.txt' installing library code to
build/bdist.macosx-10.6-intel/egg running install_lib warning:
install_lib: 'build/lib' does not exist -- no Python modules to
install
creating build/bdist.macosx-10.6-intel/egg creating
build/bdist.macosx-10.6-intel/egg/EGG-INFO copying
pip.egg-info/PKG-INFO -> build/bdist.macosx-10.6-intel/egg/EGG-INFO
copying pip.egg-info/SOURCES.txt ->
build/bdist.macosx-10.6-intel/egg/EGG-INFO copying
pip.egg-info/dependency_links.txt ->
build/bdist.macosx-10.6-intel/egg/EGG-INFO copying
pip.egg-info/entry_points.txt ->
build/bdist.macosx-10.6-intel/egg/EGG-INFO copying
pip.egg-info/not-zip-safe ->
build/bdist.macosx-10.6-intel/egg/EGG-INFO copying
pip.egg-info/requires.txt ->
build/bdist.macosx-10.6-intel/egg/EGG-INFO copying
pip.egg-info/top_level.txt ->
build/bdist.macosx-10.6-intel/egg/EGG-INFO creating
'dist/pip-1.4.1-py2.7.egg' and adding
'build/bdist.macosx-10.6-intel/egg' to it removing
'build/bdist.macosx-10.6-intel/egg' (and everything under it)
Processing pip-1.4.1-py2.7.egg removing
'/Users/dl/Library/Python/2.7/lib/python/site-packages/pip-1.4.1-py2.7.egg'
(and everything under it) creating
/Users/dl/Library/Python/2.7/lib/python/site-packages/pip-1.4.1-py2.7.egg
Extracting pip-1.4.1-py2.7.egg to
/Users/dl/Library/Python/2.7/lib/python/site-packages pip 1.4.1 is
already the active version in easy-install.pth Installing pip script
to /Users/dl/Library/Python/2.7/bin Installing pip-2.7 script to
/Users/dl/Library/Python/2.7/bin
Installed
/Users/dl/Library/Python/2.7/lib/python/site-packages/pip-1.4.1-py2.7.egg
Processing dependencies for pip==1.4.1 Finished processing
dependencies for pip==1.4.1
然后我输入pip install
,错误信息是这样显示的
Traceback (most recent call last): File
"/Library/Frameworks/Python.framework/Versions/2.7/bin/pip", line 9,
in <module>
load_entry_point('pip==1.4.1', 'console_scripts', 'pip')() File "build/bdist.macosx-10.6-intel/egg/pkg_resources.py", line 357, in
load_entry_point File
"build/bdist.macosx-10.6-intel/egg/pkg_resources.py", line 2394, in
load_entry_point File
"build/bdist.macosx-10.6-intel/egg/pkg_resources.py", line 2108, in
load ImportError: No module named pip
有谁遇到过同样的问题,可以给我一些解决方法吗?
【问题讨论】:
当你从终端(不是 python 解释器)运行 pip install 时会发生什么 终端显示类似“Import Error: No module named pip”的错误 我在更新 MacOSX 后遇到了同样的问题。最后我发现我设置 pip 失败了。重新安装 pip 然后修复它。 你可以参考***.com/questions/10061039/… 似乎这不是你的解决方案,但当我遇到 pippython -m pip install <package>
问题时,我总是尝试这个命令
【参考方案1】:
我遇到了同样的问题。 我的解决方案:
对于 Python 3
sudo apt-get install python3-pip
对于 Python 2
sudo apt-get install python-pip
【讨论】:
问题是关于在 Mac 上安装。 在 Arch 上我必须安装 python2-pip,python-pip 指向 python3 天哪,谢谢!我有一个用 python 3 旋转的 vagrant box,我想知道为什么当我通过 'sudo apt-get install python-pip' 安装 pip 时 pip 命令不起作用。这些版本更改(即像 php 和 homebrew)有时让我发疯......sudo yum install -y python38-pip
工作!谢谢..【参考方案2】:
在 Mac 上使用 brew 是更好的选择,因为 apt-get 不可用。 命令:
brew install python
如果你的机器上同时安装了 python2 和 python3
python2.7 -m ensurepip --default-pip
应该能解决问题。
如果您缺少 python 3 中的 pip,则只需在上面的命令中将 python2.7
更改为 python3
。
【讨论】:
哦,终于有一个可行的解决方案了!谢谢!我需要 Mac (Mac OS X 10.13.4) 上的 python3。使用 Brewbrew install python
安装 python 后,找不到 pip:python3 -m pip install redis
导致找不到 pip。按照你的方法 (python3 -m ...) 成功了。
我在同一台机器上有 python2 和 3,但现在我想使用 Python3。因此,我不得不将上面的评论修改为sudo python3 -m pip install matplotlib
(我必须通过 sudo 进行此操作,否则某些文件夹权限不起作用)。 (相应地编辑了答案)
这对我有用,只记得在开头添加一个sudo
。
运行第二个命令时,我得到:“zipimport.ZipImportError: can't decompress data; zlib not available”【参考方案3】:
在 macOS 10.15 和 Homebrew 2.1.6 中,我在 Python 3.7 中遇到了这个错误。我只需要运行:
python3 -m ensurepip
现在python3 -m pip
为我工作。
【讨论】:
在 Ubuntu 中,我得到“在 Debian/Ubuntu 中为系统 python 禁用了 ensurepip”。我解决了sudo apt install python3-pip
在 Windows 下也可以使用!在说出pip install --upgrade pip
之后,我的 pip 不见了(因为 pip 已成功卸载,但由于 pip.exe 正忙而无法重新安装……)。 python -m ensurepip
带回了默认 pip,我可以从中获取正确的升级路径 python -m pip install --upgrade pip
非常感谢,这帮助我在 WIndows 上解决了这个问题,而无需重新安装 python。
我在 Windows 中的工作命令是 python -m ensurepip
它适用于 WINDOWS !!!谢谢兄弟1【参考方案4】:
安装 ez_setup 后,您应该可以使用 easy_install
。要安装pip
,只需:
easy_install pip
【讨论】:
这只是在 python3 上重新安装了 pip。在 python 2.7.x 中修复 pip 安装怎么样? 也适用于 Windows...谢谢! 什么是“ez_setup”? 如果您安装了多个版本的 python,您可能希望将安装定位到特定的 python 版本,例如. "C:\Python\Python 3.8.6-64\python.exe" -m easy_install pip
。【参考方案5】:
尝试通过Python安装pip
:
请转至:https://pip.pypa.io/en/stable/installation/
并下载get-pip.py
,然后运行:
(sudo) python get-pip.py
【讨论】:
非常感谢。这对我有用 永远不要sudo
npm/pip/gem & co 只是为了让它工作 - 这非常危险。【参考方案6】:
运行
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
然后在你下载的文件夹中运行以下命令:get-pip.py
python get-pip.py
【讨论】:
这对我有用,但对于 python2,相应的链接是这样的:bootstrap.pypa.io/pip/2.7/get-pip.py【参考方案7】:对于 Windows:
python -m ensurepip
激活你的 env ex 后:venv
(venv) PS D:\your path> d:\your path\venv\scripts\python.exe -m pip install --upgrade pip
结果样本:
收集点
使用缓存的 pip-21.3-py3-none-any.whl (1.7 MB)
安装收集的包:pip
尝试卸载:pip
Found existing installation: pip 20.1.1
Uninstalling pip-20.1.1:
Successfully uninstalled pip-20.1.1
成功安装pip-21.3
【讨论】:
【参考方案8】:在某种 Linux 上,例如基于 Debian 的发行版,您可能需要考虑先更新您的“apt-get”,以防您通过它安装 python-pip。
sudo apt-get update
这可能有助于 apt-get 更新其索引并找到 python-pip 包。 在此之后,你可能会像这样安装 pip-
sudo apt-get install python-pip (Python2)
sudo apt-get install python3-pip (Python3)
【讨论】:
对于某些种类的 Linux。【参考方案9】:我在尝试安装 nova 客户端时遇到了同样的问题。
spencers-macbook-pro:python-novaclient root# python setup.py install
running install
/usr/bin/python: No module named pip
error: /usr/bin/python -m pip.__init__ install 'pbr>=0.5.21,<1.0' 'iso8601>=0.1.4' 'PrettyTable>=0.6,<0.8' 'requests>=1.1' 'simplejson>=2.0.9' 'six' 'Babel>=0.9.6' returned 1
我使用自制软件,所以我使用 sudo easy_install pip
解决了这个问题
spencers-macbook-pro:python-novaclient root# brew search pip
aespipe brew-pip lesspipe pipebench pipemeter spiped pipeviewer
If you meant "pip" precisely:
Homebrew provides pip via: `brew install python`. However you will then
have two Pythons installed on your Mac, so alternatively you can:
sudo easy_install pip
spencers-macbook-pro:python-novaclient root# sudo easy_install pip
如果您使用 macports,这些命令应该类似。
【讨论】:
【参考方案10】:我在 MacOS Big Sur 上使用 Python 3.8.6 时遇到了同样的错误。
无论我使用pip
还是pip3
我都会收到此错误:
File "/Users/marcelloromani/dev/<repository>/venv/bin/pip", line 5, in <module>
from pip._internal.cli.main import main
ModuleNotFoundError: No module named 'pip'
原来我的 virtualenv 已经过时了。 这为我解决了这个问题:
-
删除旧的 virtualenv
$ deactivate
$ rm -rf venv
-
初始化一个新的 virtualenv
$ virtualenv venv
$ . venv/bin/activate
-
安装新的要求然后工作:
$ pip install -r src/requirements.txt
【讨论】:
【参考方案11】:我认为以上这些答案都无法解决您的问题。
我曾经也被这个问题弄糊涂过。您应该按照官方指南pip installation手动安装pip
(目前涉及运行a single get-pip.py
Python script)
之后,只需sudo pip install Django
。
错误将消失。
【讨论】:
OP 没有在任何地方提到 Django。【参考方案12】:我知道这个线程很旧,但我只是在 OS X 上为自己解决了这个问题,与这里描述的不同。
基本上我通过brew重新安装了Python 2.7,它带有pip。
如果尚未安装 Xcode:
xcode-select –install
按照here 的描述安装 Brew:
ruby -e "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/master/install)"
然后通过 Brew 安装 Python:
brew install python
你就完成了。就我而言,我只需要安装 pyserial。
pip install pyserial
【讨论】:
我已经安装了 Xcode。做了ruby ...
和brew ...
。运行pip ...
时,我得到了-bash: pip: command not found
。有什么想法吗?【参考方案13】:
尝试重新安装 pip 使用 curl 命令下载 get-pip.py 文件:
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
python get-pip.py
如果 curl 不起作用,请打开此链接: get-pip.py
在你的目录中创建一个 get-pip.py 文件 从此链接复制代码并将其放在 get-pip.py 文件中并将文件保存在同一目录中。 然后运行命令
python get-pip.py
【讨论】:
【参考方案14】:如果你在 ubuntu 中得到“No module named pip”,试试这个。
$python3 -m pip --version
/usr/bin/python3: No module named pip
$sudo apt-get install python3-pip
它对我有用。
安装成功后验证使用
$python3 -m pip --version
升级到最新的 pip 版本
$python3 -m pip install --upgrade pip
【讨论】:
【参考方案15】:我从here 下载了pip
二进制文件,它解决了这个问题。
【讨论】:
【参考方案16】:在终端试试这个:
ls -lA /usr/local/bin | grep pip
在我的情况下,我得到:
-rwxr-xr-x 1 root root 284 Сен 13 16:20 pip
-rwxr-xr-x 1 root root 204 Окт 27 16:37 pip2
-rwxr-xr-x 1 root root 204 Окт 27 16:37 pip2.7
-rwxr-xr-x 1 root root 292 Сен 13 16:20 pip-3.4
所以 pip2 ||在我的情况下 pip2.7 有效,并且 pip
【讨论】:
【参考方案17】:下载:
curl https://bootstrap.pypa.io/get-pip.py -o get-pip.py
然后安装 pip:
py get-pip.py
然后安装 biopython:
py -m pip install biopython
希望对你有用
【讨论】:
【参考方案18】:我在使用命令创建新的 Python 3 虚拟环境时遇到了问题ModuleNotFoundError: No module named 'pip'
python3 -m venv ~/venv/ontology ## << note: "python3" (problematic)
这是一个经常被建议的命令(这里,别处)。当我进入那个 venv 时,找不到 pip。
在此期间,自从第一次使用该命令创建 Python 虚拟环境以来,我的系统 Python 已经从 Python 3.7.4 升级(Arch Linux 系统更新)到 Python 3.9.2。
解决方法是使用命令
python -m venv <your_venv> ## e.g. python -m ~/venv/ontology
当我这样做时(python -m ...
不是 python3 -m ...
),该 venv 现在包含 pip
...
要在该 venv 中升级 pip
,请使用
<your_venv_path>/bin/python -m pip install --upgrade pip
## e.g.
## /home/victoria/venv/ontology/bin/python -m pip install --upgrade pip
【讨论】:
【参考方案19】:我使用的是 Debian,但是这个方案也适用于 Ubuntu。
-
通常pip默认自带python,用来检查你的系统运行中是否安装了pip。
python -m pip --version
-
如果 pip 不存在,请使用 Aptitude Linux Package Manager 安装它,
# For Python 2 sudo apt install python-pip # For Python 3 sudo apt install python3-venv python3-pip
-
我不会在 Debian/Ubuntu 中使用
get-pip.py
脚本,因为在文档页面中提到了以下内容。
如果您使用由您的操作系统或其他包管理器管理的 Python 安装,请务必小心。 get-pip.py 不与这些工具协调,可能会使您的系统处于不一致的状态。
来源here 和there。
【讨论】:
【参考方案20】:对于python2.7,从https://bootstrap.pypa.io/pip/2.7/get-pip.py下载
然后运行
python get-pip.py
【讨论】:
【参考方案21】:我通过将 PYTHONPATH 设置为站点包位置解决了 Linux 上的类似错误。这是在运行python get-pip.py --prefix /home/chet/pip
之后。
[chet@rhel1 ~]$ ~/pip/bin/pip -V
Traceback (most recent call last):
File "/home/chet/pip/bin/pip", line 7, in <module>
from pip import main
ImportError: No module named pip
[chet@rhel1 ~]$ export PYTHONPATH=/home/chet/pip/lib/python2.6/site-packages
[chet@rhel1 ~]$ ~/pip/bin/pip -V
pip 9.0.1 from /home/chet/pip/lib/python2.6/site-packages (python 2.6)
【讨论】:
【参考方案22】:我的 py 版本是 3.7.3,这个 cmd 可以工作
python3.7 -m pip install requests
requests 库 - 用于从 Web API 检索数据。
这会运行 pip 模块并要求它在 PyPI.org(Python 包索引)上找到请求库并将其安装在您的本地系统中,以便您可以导入它
【讨论】:
这会导致与原始问题“No module named PIP”相同的错误【参考方案23】:针对 Linux 进行了以下测试: 可以直接从https://pypi.org/simple/pip/下载pip 解压并直接与您最新的 python 一起使用。
tar -xvf pip-0.2.tar.gz
cd pip-0.2
检查内容。
anant$ ls
docs pip.egg-info pip-log.txt pip.py PKG-INFO regen-docs scripts setup.cfg setup.py tests
直接执行:
anant$ python pip.py --help
Usage: pip.py COMMAND [OPTIONS]
Options:
--version show program's version number and exit
-h, --help show this help message and exit
-E DIR, --environment=DIR
virtualenv environment to run pip in (either give the
interpreter or the environment base directory)
-v, --verbose Give more output
-q, --quiet Give less output
--log=FILENAME Log file where a complete (maximum verbosity) record
will be kept
--proxy=PROXY Specify a proxy in the form
user:passwd@proxy.server:port. Note that the
user:password@ is optional and required only if you
are behind an authenticated proxy. If you provide
user@proxy.server:port then you will be prompted for a
password.
--timeout=SECONDS Set the socket timeout (default 15 seconds)
【讨论】:
【参考方案24】:以下是使用 MacPorts 升级到 Python 3 的基本说明:
sudo port install py37-pip
sudo port select --set pip pip37
sudo port select --set pip3 pip37
sudo pip install numpy, scipy, matplotlib
我运行了一些旧代码,升级后它又可以工作了。
【讨论】:
【参考方案25】:按照此 URL 上的建议重命名 python39._pth 文件。解决了这个问题
https://michlstechblog.info/blog/python-install-python-with-pip-on-windows-by-the-embeddable-zip-file/#more-5606
ren python39._pth python39._pth.save
【讨论】:
【参考方案26】:我只需要将pip
替换为pip3
,所以我最终运行命令如下:pip3 install matplotlib
【讨论】:
【参考方案27】:我在从requirements.txt
文件安装依赖项时遇到了与virtualenv
类似的问题,该问题有python3.8
。我设法通过激活virtualenv
然后运行命令python -m pip install -r requirements.txt
让它工作,它工作了。
【讨论】:
【参考方案28】:对于 Windows:
如果下载Python时pip
不可用:运行命令
python get-pip.py
【讨论】:
【参考方案29】:运行 sudo apt-get install pip 并重试该过程 这解决了我的问题
【讨论】:
OP 明确表示他使用的是 MAC OS X。以上是关于ImportError:没有名为 pip 的模块的主要内容,如果未能解决你的问题,请参考以下文章
pygame 错误:“ImportError:没有名为 'pygame' 的模块”
ImportError:没有名为 ghostscript 的模块