Python \`no module pip.__main__;\` 尝试安装模块时出错

新手上路,请多包涵

我在 Raspberry Pi 上收到以下错误: No module named pip__main__; 'pip' is a package and cannot be directly executed

当我输入终端时: sudo python3 -m pip install mp3play

是什么原因造成的,我该如何解决才能安装模块 mp3play

原文由 TheHarpoon 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 1.1k
2 个回答

Pip 不仅是一个独立的可执行文件,它还是一个 Python 模块。

事实上,在 python 文档中,它直接建议使用 -m 语法来使用 pip 安装包。

请参阅 https://docs.python.org/3.5/installing/index.html#basic-usage

标准的打包工具都是为在命令行中使用而设计的。

以下命令将从 Python Packaging Index 安装最新版本的模块及其依赖项:

 python -m pip install SomePackage

我的猜测是您系统的 pip (可执行文件)被 pip 可执行文件的 python2 版本隐藏了。但听起来您没有安装 pip(模块),因此您的 python3 可执行文件可以找到它,因此您可能需要专门重新安装 pip(模块)。

对于该用途 python3 -m ensurepipensurepip 的文档)如果从 python3 解释器的角度来看它不存在,它将安装 pip。

另一个问题可能是它在当前目录中找到名为 pip 的文件、可执行文件或目录,并且它试图将 pip 视为一个模块,但它不在事实上一个模块。

如果不是我不确定。但绝对不是,因为 pip 不是模块。

原文由 mpacer 发布,翻译遵循 CC BY-SA 3.0 许可协议

我遇到了同样的问题,之前的答案都没有为我解决。

当我将 python 卸载并重新安装到我的 PC 时出现错误。看起来以前存在的 pip 版本没有完全删除,当我尝试使用 python -m pip install package 导入它时,它实际上是在尝试调用以前的版本。

要解决它,请先 手动删除 以下位置的 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 并解决问题。

原文由 Djib2011 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题