Skip to main content

Command Palette

Search for a command to run...

Day 13: Virtual Environments and Dependency Management in Python

Efficient Python Development: Organizing Environments and Managing Dependencies

Published
2 min read
Day 13: Virtual Environments and Dependency Management in Python
H

A coder how works for excellence...

Day 13 of Python Learning: Exploring Virtual Environments and Dependency Management. In this blog, we delve into the significance of virtual environments in Python development and the crucial role they play in managing dependencies effectively.

Virtual Environment

The primary purpose of a virtual environment is to establish an isolated environment for our project. This isolation ensures that dependencies remain separate from the global namespace, preventing any mixing or conflicts. When we are working on a project then we will definitely face an issue like mixing our local dependency into global. If we are using some dependency in our project then we need to store it in a virtual environment to keep it specific for that project. Virtual Environment makes it easy to find the correct dependency version in different projects.

creating a virtual environment:

# command to create virtual environment in Windows
py -m venv ./venv

Dependency Management: Managing dependencies in Python combines the effort of the Virtual environment and pip(package manager). pip is used to install, update, or delete the dependency.

When installing dependencies for our project, it's essential to maintain a record of the dependency names along with their respective versions. To accomplish this, we utilize a requirements.txt file, which serves as a centralized repository for managing our project's dependencies.

Command to create requirements.txt file:

pip install -r requirements.txt

requirements.txt file:

fastapi
uvicorn
sqlalchemy
async-exit-stack
async-generator
passlib[bcrypt]
python-jose[cryptography]
python-multipart
python-dotenv
boto3>=1.15.1
botocore>=1.18.1
python-dateutil
pyyaml>=5.3.1
marshmallow>=3.0.0rc7
dnspython>=1.15.0
backoff>=2.1.2
kafka-python>=2.0.2

Conclusion

In conclusion, virtual environments play a vital role in Python development by providing isolated environments for projects, ensuring dependencies remain separate, and avoiding conflicts. By creating a virtual environment specific to each project, developers can easily manage dependencies and maintain version consistency across different projects.

Dependency management is further streamlined through the combination of virtual environments and pip, the package manager for Python. With pip, developers can effortlessly install, update, or delete dependencies as needed.

Additionally, utilizing a requirements.txt file simplifies dependency management by centralizing the list of dependencies along with their respective versions. This file serves as a reference point for ensuring that all project dependencies are properly documented and can be easily replicated across different environments.

Thankyou💕💕

Python

Part 14 of 45

In this series, we're diving deep into Python, covering everything from the fundamental basics to advanced topics.

Up next

Day 14: Basic Debugging Techniques in Python

Troubleshooting Python: Essential Debugging Techniques for Smooth Coding

More from this blog

ReactJS Made Easy: Simplifying Frontend Development for Web Applications

89 posts