2023-03-31

Virtual Environments in Python

What are Virtual Environments

Virtual environments, commonly referred to as venvs, are isolated spaces for Python projects that allow developers to maintain separate dependencies and configurations for each project. They help prevent conflicts between different package versions and enable the smooth coexistence of multiple projects with varying requirements on a single system.

Why Use Virtual Environments

Using virtual environments provides several key benefits:

  • Isolation
    Virtual environments prevent conflicts between different package versions or Python interpreter versions, ensuring that each project runs with its specific requirements without affecting other projects.

  • Simplified Dependency Management
    By isolating project-specific dependencies, virtual environments make it easier to manage, track, and update packages without affecting the system-wide Python installation.

  • Reproducibility
    Virtual environments facilitate the replication of development environments across different machines, allowing for consistent project setups and reducing the likelihood of issues arising from varying configurations.

Getting Started with venv

Virtual environments, or venvs, are a fundamental aspect of Python development. They provide an isolated environment for installing and managing Python packages specific to each project, ensuring that dependencies are consistent and do not interfere with other projects or the system Python installation.

Installing venv

Starting with Python 3.3, the venv module is included in the standard library, so no separate installation is necessary. If you are using an older version of Python, consider upgrading or using the virtualenv package as an alternative.

Creating a Virtual Environment

To create a new virtual environment, navigate to your project directory in the terminal or command prompt, and run the following command:

bash
$ python3 -m venv my_virtual_env

Replace my_virtual_env with the desired name for your virtual environment. This will create a new directory with the specified name, containing the necessary files and folders for the virtual environment.

Activating and Deactivating the Virtual Environment

Once you have created a virtual environment, you need to activate it before installing or using packages. To do so, run the appropriate command for your operating system:

  • Windows
bash
$ my_virtual_env\Scripts\activate.bat
  • macOS and Linux
bash
$ source my_virtual_env/bin/activate

Your terminal prompt should now display the virtual environment name, indicating that it is active.

To deactivate the virtual environment and return to the system Python installation, simply run:

bash
$ deactivate

Managing Python Packages with pip

With the virtual environment activated, you can use the 'pip' package manager to install, update, or remove Python packages. Some common commands include:

  • Install a package
bash
$ pip install package_name
  • Update a package
bash
$ pip install --upgrade package_name
  • Remove a package
bash
$ pip uninstall package_name
  • List installed packages
bash
$ pip list

References

https://docs.python.org/3/library/venv.html

Ryusei Kakujo

researchgatelinkedingithub

Focusing on data science for mobility

Bench Press 100kg!