ImportError:尝试安装软件包时没有名为 pip 的模块
Posted
技术标签:
【中文标题】ImportError:尝试安装软件包时没有名为 pip 的模块【英文标题】:ImportError: No module named pip when trying to install packages 【发布时间】:2014-04-18 22:51:06 【问题描述】:使用 PyCharm 全新安装 Ubuntu 13.10,并在设置 python 解释器时选择“安装 setuptools”,然后选择“安装 pip”。现在,如果我尝试用 pip 做任何事情,我会得到以下信息:
ciaran@ciaran-desktop:~/pycharm/bin$ pip
Traceback (most recent call last):
File "/usr/local/bin/pip", line 9, in <module>
load_entry_point('pip==1.4.1', 'console_scripts', 'pip')()
File "build/bdist.linux-x86_64/egg/pkg_resources.py", line 357, in load_entry_point
"""Does the package's distribution contain the named metadata?"""
File "build/bdist.linux-x86_64/egg/pkg_resources.py", line 2394, in load_entry_point
File "build/bdist.linux-x86_64/egg/pkg_resources.py", line 2108, in load
ImportError: No module named pip
我在 python 2.7.5 和 3.3.2 上尝试过,结果都一样。
编辑:以上输出来自终端。 PyCharm 输出以下内容:
Error: Python package management tool 'pip' not found
【问题讨论】:
也许您需要激活您的虚拟环境? 你试过“sudo easy_install pip”吗?无论如何,你应该使用 virtualenv:virtualenv.org/en/latest 【参考方案1】:尽管使用 pip3 和 pip 工具都安装了 pyserial(至少我是这么认为的),但我对“没有名为 serial 的模块”感到疯狂后来到这里。
在我的系统 (Tumbleweed) 上,我有 python (2.7.18) 和 python3 (3.8.12),以及 pip 和 pip3 工具。我的假设是 pip 和 pip3 是不同的,就像 python 和 python3 一样。
但是,事实证明 pip 和 pip3 是相同的,它只安装了 python3 的模块。我意识到这一点只是因为 python -m pip install pyserial 返回“没有名为 pip 的模块”(尽管 pip 是独立运行的)。一个 pip --version 显示它也适用于 python3。真是奇怪的组合!
就我而言,解决方案是通过 zypper/yast 安装 python2-pip。之后,pip 负责安装 python2 模块(尽管打印了关于自身的弃用警告)并且 python -m pip 现在也可以按预期工作。
最后,pip install pyserial 给了我编译/上传一些 Arduino esp32 东西所需的 python2 串行模块。我添加了这些额外的内容来涵盖其他地方的 20 多个关于“没有名为串行的模块”的问题,这些问题在许多情况下可能由于相同的原因而失败。
【讨论】:
【参考方案2】:我发现在 Ubuntu 上,pip 并不总是为其安装的模块设置读取和执行权限。我的解决方案是始终运行这个 shell 脚本:
sudo chmod -R a+rX /usr/lib/python*/dist-packages/
sudo chmod -R a+rX /usr/local/lib/python*/dist-packages/
sudo chmod a+rX /usr/bin/*
sudo chmod a+rX /usr/local/bin/*
【讨论】:
这对我不起作用,我刚刚下载了 get-pip.py 并重新安装了 pip。 就我而言,我必须从命令行运行重新安装:python get-pip.py @Yuhen 可能最新版本的pip解决了这个问题?【参考方案3】:从 pip 网站 (http://pip.readthedocs.org/en/stable/installing/) 下载文件 get-pip.py。 打开终端,cd 到你放置 get-pip.py 的文件夹 并运行:
sudo python3 get-pip.py
打开 pycharm 并安装所需的包...
【讨论】:
以上是关于ImportError:尝试安装软件包时没有名为 pip 的模块的主要内容,如果未能解决你的问题,请参考以下文章
ImportError:没有名为 pynotify 的模块。安装模块时
ImportError:仅在 django 中没有名为“bs4”的模块