Solved: virtual environment

Virtual Environments can be understood as a tool to keep the dependencies required by different projects separated by creating isolated Python environments for them. The crux of the problem lies in the fact that projects can depend on different versions of the same package, which can create a lot of confusion and conflict. Virtual environments offer a solution to this.

The Solution to the Problem

The solution comes in the form of Virtual Environments. With these, you can erect a sandbox for your Python projects, separating the dependencies required by different projects. This maintains a well-organized, segregated structure where conflicts are minimized.

The local environments allow us to keep the workspace clean and organized, offering separate environments for separate projects with their own dependencies. The other alluring aspect of these environments is that they are lightweight and easy to handle.

Python’s Venv Module

Python 3 comes with a built-in solution for creating virtual environments. It’s the venv module. It lets you create lightweight “virtual environments” with their own site directories, optionally isolated from system site directories. Here’s step-by-step on how to create a virtual environment.


# Step 1: Check Your Python Version
python --version 

# Step 2: Create a Directory 
mkdir my_project 
cd my_project 

# Step 3: Creating a Virtual Environment
python3 -m venv my_env 

# Step 4: Activate the Environment
source my_env/bin/activate

Activating the Virtual Environment

The activation of a virtual environment enables us to isolate the project by associating it with a specific Python version and sets of packages. This step allows us to maintain project dependency segregation and project management easy.

Once the virtual environment is activated, the terminal prompt changes, displaying the name of the activated environment. Now we can start installing packages with pip, and these will be installed within the virtual environment.


# Step 1: Activate the Environment
source my_env/bin/activate

# Step 2: Verify the Python Version (optional)
which python

# Step 3: Install Packages (For example, we install pandas)
pip install pandas

The necessity of Deactivating the Environment

Deactivation is as important a process as the activation of the environment. After finishing tests or changes in a specific environment, deactivating it is recommended. It ensures that no cross dependencies or conflicts take place later on.


# Deactivate the Environment
deactivate

Using virtual environments in Python can enhance the development workflow by providing a clear and neat segregation of Python projects, along with their respective dependencies. If you have not leveraged virtual environments so far, consider integrating them into your workflow, and experience the boost in efficiency.

Related posts:

Leave a Comment