I have been using anaconda for a while, and its Python executable is located at /Users/ufo/opt/anaconda3/bin/python. I have tried to create an environment with conda, and the new environment would use copy this Python to environment’s bin.
However, with current Anaconda versation, the new environment will not use anaconda’s Python, but use the original Python pre-installed with Mac OS, which was python 2.*.
Here is a snip of checking anaconda python version, creating/activating new environment, and checking again. From the snip I noticed the change of $PATH as well as Python versions.
How can I still use anaconda’s Python in new environment?
(base) ufo@ufodeMacBook-Pro:~$ echo $PATH /Users/ufo/opt/anaconda3/bin:/Users/ufo/opt/anaconda3/condabin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin (base) ufo@ufodeMacBook-Pro:~$ which python /Users/ufo/opt/anaconda3/bin/python (base) ufo@ufodeMacBook-Pro:~$ python -V Python 3.7.5 (base) ufo@ufodeMacBook-Pro:~$ conda info -e # conda environments: # base * /Users/ufo/opt/anaconda3 (base) ufo@ufodeMacBook-Pro:~$ conda create -n msg Collecting package metadata (current_repodata.json): done Solving environment: done ## Package Plan ## environment location: /Users/ufo/opt/anaconda3/envs/msg Proceed ([y]/n)? Preparing transaction: done Verifying transaction: done Executing transaction: done # # To activate this environment, use # # $ conda activate msg # # To deactivate an active environment, use # # $ conda deactivate (base) ufo@ufodeMacBook-Pro:~$ conda activate msg (msg) ufo@ufodeMacBook-Pro:~$ which python /usr/bin/python (msg) ufo@ufodeMacBook-Pro:~$ echo $PATH /Users/ufo/opt/anaconda3/envs/msg/bin:/Users/ufo/opt/anaconda3/condabin:/usr/local/bin:/usr/bin:/bin:/usr/sbin:/sbin (msg) ufo@ufodeMacBook-Pro:~$ conda info -e # conda environments: # base /Users/ufo/opt/anaconda3 msg * /Users/ufo/opt/anaconda3/envs/msg (msg) ufo@ufodeMacBook-Pro:~$ python -V Python 2.7.10 (msg) ufo@ufodeMacBook-Pro:~$
Advertisement
Answer
An easy workaround would be to export the path to the python you require once you activate the environment. As can be seen in the below snipet.
export PATH=/Users/ufo/opt/anaconda3/bin/:$PATH
you can then use which python
to see if your python is rightly set
To use your environments python do
export PATH=/Users/ufo/opt/anaconda3/envs/msg/bin/:$PATH