In conda, what is the differece between "base" environment and no environment at all?
activating a conda environment is not much more than applying settings to your shell to use a specific python interpreter (and the modules and libs associated to that interpreter)
when you drop out of a conda environment, your shell reverts to the python interpreter determined by your $PATH environment variable -- generally speaking, this default is typically a non-conda environment and is usually the default python installed with the OS (if applicable)
As freude is saying, the obvious way to see this in action is to do which python
as you activate/deactivate environments
When playing with python virtual environments in linux (and macOS), it is useful to use the command which python
or which pip
from the terminal. This command shows the path to the currently used python interpreter - that is the thing, together with the location of site packages, that differs one environment from another. The python environment is nothing else but a directory where you have a copy of your python interpreter and installed libraries. Switching from the (base)
to the deactivated (base)
implies switching from one python interpreter to another one - that may be checked using which
.
In windows, the closest equivalent of which
is where
.
Short answer: convenience.
When base
is activated: check out /anaconda3/bin/
you'll find all the binaries that will be included in the $PATH
environment variable (try echo $PATH
in your bash shell)
When base
is NOT activated: basically you only have conda
binary available to use by default. Once again, try echo $PATH
in your bash shell to see the difference.