A virtual environment is een geïsoleerde Python-omgeving met eigen geïnstalleerde pakketten, gescheiden van de systeem-Python en andere projecten. Het lost dependency conflicts op — verschillende projecten kunnen verschillende (zelfs inkompatibele) versies van hetzelfde pakket gebruiken.
Het probleem dat het oplost
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.
Zonder isolatie leidt globale pakketinstallatie tot versieverwarring tussen projecten en kan systeemtools breken die afhangen van specifieke versies.
