lightweight(poor man) isolation via modifying PATH
to prefix it with custom bin
docs
pip3 install virtualenv # isntall virtualenv
cd <repo>
virtualenv <venv> # create new environment <venv>
source venv/bin/activate # enter virtual env
pip install -r requirements.txt # install all python modules
<processing...>
deactivate # leave env
rm -r <venv> # to cleanup virtual env, simply delete the directory
standard library after python 3.4. (previously is pyvenv)
isolate Python version.
virtual enviroment + pip package management + default data-science packages could switch python version
mini version conda, less packages
container under same OS. could move the whole env to other machine. Good for deploy any type of program.
whole OS
I perfer virtualenv (venv) and docker, based on use case and premission/pre-installed program in the computer. conda is too heavy with default data-science packages, which could easily installed with pip -r requirements.txt if required. I do not need its GUI tools when remoting server/ GPU instances. Also, Python 2 is not under-maintain anymore. Python 3 projects usually do not need to specific minor version.