There are many packages that relates to python virtual environments. For example,

  • virtualenv
  • pyenv
  • pipenv
  • Standard python library venv module

All the modules are python packages and can be installed by pip command. The standard venv module is shipped with python. So we do not need to install it if we have python.

See What is the difference between venv, pyvenv, pyenv, virtualenv, virtualenvwrapper, pipenv, etc?

Difference

Standard venv vs virtualenv.

  • The venv module supports creating lightweight “virtual environments”, each with their own independent set of Python packages installed in their site directories. A virtual environment is created on top of an existing Python installation, known as the virtual environment’s “base” Python, and may optionally be isolated from the packages in the base environment, so only those explicitly installed in the virtual environment are available.

  • virtualenv is a tool to create isolated Python environments. Since Python 3.3, a subset of it has been integrated into the standard library under the venv module. However, the venv module does not offer all features of this library. virtualenv can be installed by pip:

$ python -m pip install --user virtualenv