Home > Blog > What is the Virtual Environment in Python - How to Create It?

What is the Virtual Environment in Python - How to Create It?

What is the Virtual Environment in Python - How to Create It?

By Upskill Campus
Published Date:   2nd July, 2024 Uploaded By:    Shriyansh Tiwari
Table of Contents [show]


Visualize working on two different Lego castles at the same time. One castle uses a little red packageX version 1.0, while the other needs a bigger packageX version 2.0. Mixing all your bricks makes it easy to grab the wrong ones and mess up your first castle when building the second. However, it is what happens in Python development without virtual environments. Using the same libraries for different projects can cause conflicts. The virtual environment in Python acts differently for each project, keeping everything organized and preventing accidental mix-ups. As a result, it lets you use different library versions for each project without causing problems.


What is the Virtual Environment in Python?


The virtual environment is a toolbox for your Python project. Inside this toolbox, you have your own set of libraries, scripts, and even a Python interpreter. All are perfectly sized for your project. However, this toolbox is entirely separate from any other toolboxes you might have in different virtual environments or the system-wide Python installation.


Why is this separate toolbox essential? Sometimes, you need a specific library version for one project but a different size for another. If you just had one toolbox (the system-wide Python), using the wrong library version on a project could break things! Virtual environments prevent this by keeping everything for each project organized and separate.

So, when you activate a virtual environment, it's holding the perfect toolbox for your project. This toolbox has its way of getting new tools, its shelf to store them (libraries folder), and its trusty Python interpreter to get the job done.


Benefits of Python Environment


We discussed why a virtual environment in Python is the separate toolbox for your Python projects. Now, let's explore the benefits of using them.
 

  • Project Isolation: Your project's toolbox keeps everything separate from the system-wide Python installation and other virtual environments. As a result, it prevents conflicts and ensures your project runs smoothly.
  • Version Freedom: Virtual environments let you create one for each version you need.
  • Easy Sharing: Sharing your project with others is a breeze. They can just activate your virtual environment and have all the necessary libraries ready. There is no need for admin privileges or messing with their system setup.
  • Dependency Clarity: Virtual environments help you track all the libraries your project uses. However, it makes it easy for other developers to understand and replicate your project's setup.


Using virtual environments is a best practice for Python development, especially for complex projects. In the next section, we'll dive into setting up your virtual Python environment using the venv tools. It gives you fine-grained control over your project's toolbox.


Create Virtual Environment Python


Different projects need different libraries, and if they're all mixed up, it can cause problems. That's where the virtual environment in Python comes in. As mentioned earlier, they're the toolboxes for each of your Python projects. Each virtual environment has its own set of libraries, separate from your system-wide Python installation. This way, a project that needs a specific library won't mess with the libraries you're using for another project. The following section will discuss the steps to create Python virtual environment.


You use a tool called pip to install virtualenv. Now, you can create a new toolbox for your project. You use the virtualenv command followed by a name for your toolbox (like my_env). As a result, it creates a folder with everything your project needs.


Step 1: Installing virtualenv

$ pip install virtualenv


Step 2: Testing Your Installation

$ virtualenv --version


Step 3: Creating a new Virtual Environment in Python

Follow the below command to create a virtual environment python.

$ virtualenv my_env

Once your virtual environment is set up, you can activate it. Now, you can run your Python code and use the libraries installed in that specific environment. By using virtual environments, you keep your Python projects clean and organized.


Activate Python Virtual Environment

We created a virtual environment for your project, but it's locked! To use the libraries inside, you need to open them. Every project has its virtual environment, so activate the one that matches your current project. Here, we will define steps to activate the virtual environment in Python. 


// For Windows 

Open your command prompt and navigate to the folder where you created your virtual environment. You can use the command to change directories. 

$ cd

$ Scripts\activate


// For Linux

Open your terminal and navigate to the folder where you created your virtual environment. Follow the below command to activate on Linux Operating System.

$ source virtualenv_name/bin/activate


Once activated, the name of your virtual environment will appear at the beginning of the terminal line. In short, you're now working inside your project's remarkable toolbox, ready to use the tools (libraries) you installed there. Don't forget to activate the virtual environment whenever you want to work on that specific project.


Installing Dependencies of Virtual Environment in Python


You've opened your project's virtual environment. Now, it's time to fill it with the specific tools or libraries your project needs. In short, these tools are called dependencies. 

Once your virtual environment is activated, you can install dependencies. You'll use the pip command (remember, the helpful hardware store manager) followed by the name of the dependency and its version (if specific).


For example, if your project uses Django version 1.9, you'd use the following command:

(virtualenv_name)$ pip install Django==1.9


Important Note:
 

  • (virtualenv_name) is just a reminder that you're now working inside your activated virtual environment.
  • ==1.9 specifies the exact version of Django you need.


By installing dependencies within your virtual environment, they'll be placed neatly inside that specific environment's folder (virtualenv_name). As a result, it keeps everything organized and avoids conflicts with other projects or your system-wide Python installation.


Wrapping Words!


Virtual environment in Python has created isolated workspaces for your projects. Moreover, they ensure each one has the specific libraries or tools it needs without messing with other projects or your system-wide Python setup. In addition, this keeps things organized, avoids conflicts, and makes working on multiple projects simple. In short, it's like having the perfect toolbox for every job, keeping your Python projects clean and efficient.


Frequently Asked Questions


Q1. What does it mean to activate a virtual environment?

Ans. Activating your virtual environment tells your computer to prioritize the Python interpreter and libraries installed within that specific environment. In this way, when you run Python commands or scripts, they'll use the exact tools you need for your project. As a result, it keeps everything organized and avoids confusion.


Q2. Which virtual environment is best?

Ans.Pipenv, conda, and venv are the best for the virtual environment.

 

About the Author

Upskill Campus

UpskillCampus provides career assistance facilities not only with their courses but with their applications from Salary builder to Career assistance, they also help School students with what an individual needs to opt for a better career.

Recommended for you

Leave a comment