One project, one env
A virtual environment is a local Python setup for one project. It keeps your packages inside the project folder, not mixed with your system Python.
This matters when your hackathon teammate clones your repo. They should install the same packages you used, not guess from your laptop.
Why it matters
Without an env, you may install packages globally. Later, one project needs requests 2.x and another needs a different version. Your scripts start failing in confusing ways.
A clean env also makes your repo look internship-ready. It shows you know how to make code runnable on another machine.