Bir sanal ortam, sistem Python'undan ve diğer projelerden ayrı, kendi kurulu paketlerine sahip izole edilmiş bir Python ortamıdır. Bağımlılık çakışmalarını çözer — farklı projeler aynı paketin farklı (hatta uyumsuz) sürümlerini kullanabilir.
Çözdüğü sorun
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.
İzolasyon olmadan, paketleri global olarak kurmak projeler arasında sürüm çatışmalarına yol açar ve belirli sürümlere bağlı olan sistem araçlarını bozabilir.
