在OSX上管理多个Python版本

在OSX上管理多个Python版本,python,macos,homebrew,Python,Macos,Homebrew,如果我已经通过brew安装了Python 3,那么管理多个Python安装(长期)的最佳方法是什么?在过去,Python版本安装在这里、那里和任何地方,因为我使用不同的工具来安装各种更新。你可以想象,这最终成了一个问题 我曾经遇到过这样的情况:我的一个项目中使用的包只适用于Python3.4,但我最近更新到了3.6。我的代码不再运行,我不得不在系统中搜索Python3.4以实际启动项目。这是一个巨大的皮塔 我最近擦了擦电脑,想避免我过去的一些错误。也许这很幼稚,但我想将版本安装限制为brew。(

如果我已经通过brew安装了Python 3,那么管理多个Python安装(长期)的最佳方法是什么?在过去,Python版本安装在这里、那里和任何地方,因为我使用不同的工具来安装各种更新。你可以想象,这最终成了一个问题

我曾经遇到过这样的情况:我的一个项目中使用的包只适用于Python3.4,但我最近更新到了3.6。我的代码不再运行,我不得不在系统中搜索Python3.4以实际启动项目。这是一个巨大的皮塔

我最近擦了擦电脑,想避免我过去的一些错误。也许这很幼稚,但我想将版本安装限制为brew。(除非这是非理性的——我愿意接受其他建议!)此外,我想知道如何解决我过去的版本管理难题(即,类似于上述情况)。我听说过pyenv,但这会与brew冲突吗


谢谢

使用VirtualNVs减少独立项目之间的包冲突。激活venv后,使用pip安装软件包。这样,每个项目都有一个独立的包空间视图

我使用brew安装Python 2.7和3.6。其中每一个的venv实用程序将分别构建2或3个venv

我还从brew安装了pyenv,如果我想要的特定版本不是brew中的最新版本,请使用该版本。在激活目录中的特定版本后,我将创建一个venv并使用它来管理包隔离


我真的说不出什么是最好的。让我们看看其他人怎么说。

使用VirtualNVs来减少独立项目之间的包冲突。激活venv后,使用pip安装软件包。这样,每个项目都有一个独立的包空间视图

我使用brew安装Python 2.7和3.6。其中每一个的venv实用程序将分别构建2或3个venv

我还从brew安装了pyenv,如果我想要的特定版本不是brew中的最新版本,请使用该版本。在激活目录中的特定版本后,我将创建一个venv并使用它来管理包隔离


我真的说不出什么是最好的。让我们看看其他人怎么说。

我同意使用virtualenv,它允许您为不同的项目和客户端分别管理不同的python版本。
这基本上允许您拥有与其他项目隔离的每个项目的依赖项。

我同意使用virtualenv,它允许您为不同的项目和客户端分别管理不同的python版本。
这基本上允许您拥有每个项目的独立依赖关系。

您有没有研究过Conda?我应该补充一点,我使用Conda,因为它并不是只针对Python的。安装miniconda后,命令很简单:conda create-n my_env_name python=3.6。然后使用:source activate my_env_name进入环境。此外,continuum维护一组预编译库,例如NumPy,您可以通过它们的repo(conda install NumPy)安装这些库。这比pip安装要快得多。你看过Conda吗?我应该补充一点,我使用Conda,因为它并不是只针对Python的。安装miniconda后,命令很简单:conda create-n my_env_name python=3.6。然后使用:source activate my_env_name进入环境。此外,continuum维护一组预编译库,例如NumPy,您可以通过它们的repo(conda install NumPy)安装这些库。这比pip安装要快得多。