错误:"/usr/local/bin/python: 没有名为pip的模块"

16
我安装了pip,但如果我尝试安装一个包:
python -m pip install requests

它说

/usr/local/bin/python: No module named pip

我该如何确定问题出在哪里?

问题不在于pip,而是模块没有正确安装,因此我无法在Python中使用它们。我正在使用Ubuntu 15.04(Vivid Vervet)。


2
pip已安装吗?您可以使用which pip进行检查。如果没有安装pip,请参考文档开始安装。 - Josh J
你应该更新问题,说明你使用的是哪个版本的Linux;anoop的答案适用于Debian/Ubuntu,而Fedora/Redhat/CentOS需要稍微不同的指令。 - Foon
pip已安装,我正在使用Ubuntu 15.04。 - cbl
1
你手动安装了Python,而你应该使用你的发行版的包管理工具(apt-get/dpkg)。因此,你的Python安装已经损坏。在继续之前,你必须修复它。也许可以从删除你放置在/usr/local目录下的内容开始。 - spectras
跟进:请看我的回答,他实际上遇到了相同的问题 http://stackoverflow.com/questions/32679540/debian-no-module-named-numpy/32679861#32679861 - spectras
显示剩余2条评论
6个回答

15

我的情况是Python 3可以正常工作,但pip 3无法工作(默认的Python版本是Python 2.7,但这并不重要)。

我通过以下命令解决了这个问题:

apt-get purge python3-pip
apt-get install -y python3-pip

如果您不是超级用户,可能需要在命令开头添加sudo


2

我在工作中使用的 openSUSE 操作系统上没有安装 pip,并且 YaST 也找不到它。我发现 YaST 只指向了一个本地软件包仓库,显然缺少了 pip

我添加了官方的 openSUSE 软件包仓库,可以在 软件包仓库 页面找到,并成功找到并安装了 pip


1

我曾经需要做类似的事情,但汤姆的回答DigitalOceanUbuntu 14.04.05(Trusty Tahr)上并不完全适用。

apt-get install python-setuptools
easy_install pip
apt-get install python3-dev
pip install --upgrade setuptools
pip install cryptography
pip install paramiko

1

Pip是一个Python打包模块,可以帮助我们安装Python库。要安装Python库/模块,您需要安装pip -

sudo apt-get install python-setuptools
sudo easy_install pip
sudo apt-get update
which pip # To check pip install or not
pip install requests

安装requests-2.8.0成功 导入错误:没有名为requests的模块 - cbl
请执行类似于 pip freeze | grep requests 的命令,检查是否已安装 requests,并检查是否正在使用虚拟环境。如果您正在使用虚拟环境,则需要使用 source env/bin/activate 命令激活它。 - tom

1

安装指定版本的pip:python3.你已经安装的版本 -m ensurepip,然后你就可以使用python3.你已经安装的版本 -m pip install 你想要的包名


-1

查看包是否安装在您的Python版本的site-packages中。

它提供了特定Python版本的所有软件包所在的路径。

import sys, os; print os.sep.join([sys.prefix, 'lib', 'python' + sys.version[:3], 'site-packages']);

如果您在那里找到requests,那么import requests应该可以工作。否则,请使用以下代码将上述路径添加到您的Python解释器路径中。

import sys
sys.path.append("<path>")

包含 "sys.version[:3]" 的代码行将在什么上下文中执行?为什么在代码格式化之外有分号?请通过编辑(更改)您的答案进行回复,而不是在此处进行评论(不带“编辑:”、“更新:”或类似语句 - 答案应该看起来像是今天写的)。 - Peter Mortensen

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接