关于python:Anaconda和Brew的最佳实践

Best Practices with Anaconda and Brew

我刚得到一个新的MacBook与OSX Sierra,所以想确保我的开发环境设置正确。

我希望遵循这里提到的"最佳实践":https://github.com/nicolashery/mac-dev-setup

我需要使用python 2.x(urlib、pandas、numpy、scikit-learn)和python 3.x来学习一些在线课程(pandas、numpy、django)。我已经安装了python 2和3,分别使用brew install pythonbrew install python3

然而,在这一点上,没有提到Python,只有伊皮顿。考虑到我已经通过自制安装了python 2和3,那么使用anaconda是否更明智,或者我应该像上面提到的那样使用标准ipython?在阅读了以下文章后,我很困惑:OSX—在水蟒和自制的python环境之间做出决定

如果BREW和Anaconda确实可以协同工作,我可以采取哪些具体步骤来确保两个版本之间没有冲突?


我对python不熟悉,在安装python时遇到了麻烦。我在Mac上安装了自制和水蟒的python。我的anaconda安装把我对vim和macvim的自制python依赖搞砸了。

我的解决方案是,每当我通过自制安装/更新软件包时,我都会从路径中删除Python。这有点痛苦,但我只是偶尔通过自制安装/更新软件包,所以没关系。

要在python 2和3之间切换,以下是我在终端中的命令:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
$ conda search python
...
...
$ conda install python=3.5.0

$ conda info -e
# conda environments:
#
py27                     /Users/apollotang/opt/local/anaconda2/envs/py27
py36                     /Users/apollotang/opt/local/anaconda2/envs/py36
root                  *  /Users/apollotang/opt/local/anaconda2

$ source activate py36      ### <——— here is the command in to change python version
(py36) $ conda info -e
# conda environments:
#
py27                     /Users/apollotang/opt/local/anaconda2/envs/py27
py36                  *  /Users/apollotang/opt/local/anaconda2/envs/py36
root                     /Users/apollotang/opt/local/anaconda2

(py36) $ python -V
Python 3.6.2 :: Anaconda custom (x86_64)

我是从如何更改默认的Python环境和http://chris35wills.github.io/conda_python_版本/

此外,这里还有一篇关于在Mac上设置Python环境的最佳实践的非常好的文章https://www.davidculley.com/installing-python-a-mac/


这是一篇有趣的文章,关于自制水蟒和水蟒的重叠及其处理方法。用水蟒和自制设置python环境


安装anaconda意味着您不需要系统python(将其留给系统,因为您可能不想更改它),也不需要homebrew安装的pythons。

创建conda环境时,可以指定希望它使用的Python版本。例如:

1
$ conda create --name myenv python=3.5

激活conda环境(在执行上述命令后,您将使用conda activate myenv或早期版本的source activate myenv执行此操作)自动意味着python命令将运行您为该环境选择的python解释器。软件包可以与pipconda install一起安装,并且与conda环境非常兼容。


您可以设置一个虚拟环境(virtualenv),并为每个环境分配不同版本的python,这样就不会有任何导致依赖性问题的重叠。

查看"The Hitchiker's Guide to python"了解如何通过设置。

http://docs.python-guide.org/en/latest/dev/virtualenvs/