如何在安装了 python 2 & 3 的情况下使用 pip? (OSX)

How to use pip with python 2 & 3 installed? (OSX)

我正在尝试让 python 3 在我的 OSX 笔记本电脑上工作。

我需要安装 python 3 的请求,但它不工作。

我想我已经为 python 2.7 和 python 3 安装了 pip 但是...

每当我使用 'pip' 它指向 python2...我似乎无法访问 python 3 的 pip?

运行 此命令用于查找 运行ning pip 之前使用的 python:which python。你可以做同样的想法来找到哪个 pip 版本 运行: which pip

您需要创建单独的虚拟环境才能使用不同的 python 版本 and/or python 依赖项。使用 conda 或 venv 之类的东西来执行此操作。然后,确保在使用 pip 安装新包之前激活所需的 python 版本虚拟环境。

十有八九,pip3 将安装指向您的 Python 3 安装,因此您的用例可能只需从以下位置切换即可解决:

$ pip install foo

至:

$ pip3 install foo  # Or pip3.7 install foo if you need to disambiguate further

就是说,当您有许多不同的 Python 安装时,它会变得有点复杂,其中 pip/pip3 可能已安装指向 Python与您正在使用的 python/python3 不对应的版本,这可能会造成混淆。

如果您知道 pythonpython3 是正确的可执行文件,只需使用它来代表您调用 pip。这也相当简单,只需检查您的版本以确保它是您期望的版本(例如在我的系统上):

$ python --version
Python 2.7.15rc1
$ python3 --version
Python 3.6.6

然后使用适当的 -mpip,一个标志 运行 通过选择的 Python 安装的 module/package 作为 "main" 可执行文件,绕过完全需要特定版本的 pip 可执行文件。所以如果你想在我的机器上为 Python 3.6 安装 foo,你会 运行:

$ python3 -mpip install foo

这在 Windows 上特别有用,其中 pip 可执行文件通常不存在,或者未安装在 PATH 中,因此使用它们很烦人。相反,使用任何现代 Python 3 版本附带的 Windows launcher(但管理机器上的所有 Python 版本),并用于消除各种版本之间的歧义。例如:

C:\>; Installs foo for latest installed version of Python 3
C:\>py -3 -mpip install foo
C:\>; Installs foo for latest installed version of Python 2
C:\>py -2 -mpip install foo
C:\>; Installs foo for latest installed version of Python 3.6
C:\>py -3.6 -mpip install foo

本质上,任何对 pip 的使用都可以通过使用 运行 pip 包的 -mpip 选项直接执行 Python 解释器来代替"main" 可执行文件。

此技巧适用于许多其他带有专用启动器的工具,这些启动器通常未安装在 PATH 中,尤其是在 Windows 上,它也使更新更容易;我用于启动 ipython3 的 Windows 快捷方式从未使用硬编码的启动器路径(例如 C:\Program Files\Python36\Scripts\ipython3.exe),而是使用 %WINDIR%\py.exe -3 -mIPython。除了更便携(快捷方式 "just works" 在任何 Windows 系统上半新 Python 3 安装),它是自我更新的;当我从 3.6 升级到 3.7 时,快捷方式根本不需要更改(我必须再次 运行 py -3 -mpip install ipython 才能重新安装 IPython,但是一旦我这样做了,快捷方式无缝地开始引用 3.7 安装,无需更改)。

要为 python3 安装 requests,请使用 pip3 install requests,它是 Python 3 个模块的 pip 安装程序。

本指南提供了一些关于让 Python 3 在 mac 上工作的更多信息。 https://docs.python-guide.org/starting/install3/osx/

先尝试 sudo apt-get update 然后 sudo apt-get install python3-pip --fix-missing