Python Virtual Environment
Contents
Some notes on virtual environment for Python. Dependency management with ease.
Virtual environment
Usually it’s about choosing between virtualenv + pip or conda.
The site has a great table on comparing the differences between them.
virtualenv + pip
First we setup virtualenv, and after activating it, we install packages in it using normal pip operations.
virtualenv
- create:
cd $ENV_BASE_DIR; virtualenv $ENVIRONMENT_NAME - activate:
source $ENV_BASE_DIR/$ENVIRONMENT_NAME/bin/activate - deactivate:
deactivate - install: Normal
pipoperations (Regardless of whether you are using Python 2 or Python 3, when the virtual environment is activated, we should use thepipcommand (notpip3))
pip
- install package:
pip install $PACKAGE_NAME - upgrade package:
pip install --upgrade $PACKAGE_NAME - uninstall package:
pip uninstall $PACKAGE_NAME - search package:
pip search $SEARCH_TERM - upgrade
pip:pip install -U pip - list:
pip list - generate requirement file (for installation):
pip freeze
conda
Conda does it all! No separate commands, they are all-in-one.
- create:
conda create -n $ENVIRONMENT_NAME python[=3.6] - activate:
source activate $ENVIRONMENT_NAME - deactivate:
source deactivate - install package:
conda install $PACKAGE_NAME - upgrade package:
conda update --name $ENVIRONMENT_NAME $PACKAGE_NAME - uninstall package:
conda remove --name $ENVIRONMENT_NAME $PACKAGE_NAME - search package:
conda search $SEARCH_TERM - upgrade
pip:conda update conda - list:
conda list --name $ENVIRONMENT_NAME - generate requirement file (for installation):
conda list --export - list envs:
conda info --envs - install python:
conda install python=x.x - upgrade python:
conda update python *