Virtualna okolina je izolirana Python okoline sa vlastitim instaliranim paketima, odvojena od sistemskog Pythona i ostalih projekata. Rješava sukobe zavisnosti — različiti projekti mogu koristiti različite (čak i neusklađene) verzije istog paketa.
Problem koji rješava
Project A needs Django 3.2
Project B needs Django 4.2
→ Installing globally, they CONFLICT — you can't have both versions system-wide.
Virtual environments give each project its OWN isolated set of packages.
Bez izolacije, globalna instalacija paketa dovodi do sukoba verzija između projekata i može prekinuti sistemske alate koji ovise o određenim verzijama.
