Sorry als ik een beetje dwaas klink.
Ik ben hierin in de war
Wat is het verschil tussen de twee
virtualenv myvenv
en
-M Venv Myvenv
De eerste werkt goed voor mij in het maken van virtuele omgevingen terwijl de ander dat niet doet.
I CD in mijn ontwikkelingsdirectory en gebruik “virtualenv myvenv ” en het creëert de virtuele omgeving. Maar als ik gebruik “-m Venv Myvenv ” geeft het gewoon fouten. Help me alsjeblieft
Antwoord 1, Autoriteit 100%
Venv is een pakket dat rechtstreeks met Python 3 wordt verzonden. Dus u hoeft u niet pip install
alles te installeren.
Virtualenv In plaats daarvan is een onafhankelijke bibliotheek beschikbaar op https: // virtualenv. pypa.io/en/stabel/ en kan worden geïnstalleerd met pip
.
Ze lossen hetzelfde probleem op en werken op een zeer vergelijkbare manier.
Als u Python3 gebruikt, stel ik voor om een ”extra” afhankelijkheid te vermijden en gewoon bij te houden met venv
Uw fout is waarschijnlijk omdat u Python2 / PIP2
gebruikt
Antwoord 2, Autoriteit 32%
Ik denk dat de virtualenv docs dit het beste uitleggen:
venv
is een subset van virtualenv
geïntegreerd in de standaardbibliotheek sinds Python 3.3. De subset die betekent dat slechts een deel van virtualenv
s functionaliteit is in venv
:
venv
kan langzamer zijn, omdat het geen “app-data
zaadmethode” heeft “venv
wordt alleen geüpgraded via het upgraden van de Python-versie, terwijlvirtualenv
wordt bijgewerkt met PIP.venv
is niet uitbreidbaarvirtualenv
heeft een uitgebreidere programmatische API(beschrijf virtuele omgevingen zonder ze te maken). Bekijk devenv
API hier.venv
kan willekeurig geïnstalleerde python-versies niet automatisch ontdekken, terwijlvirtualenv
dat wel doet. Dit betekent dat je metvenv
het volledige pad van het uitvoerbare bestandpython
moet specificeren, als je een andere pythonversie wilt gebruiken dan de eerste in het PATH. Metvirtualenv
kun je gewoon het versienummer opgeven. Zie python-ontdekkingin de virtualenv-documentatie.
Voor mij zijn de verschillen vrij subtiel en het enige praktische verschil is dat venv
is opgenomen in de standaardbibliotheek (sinds 3.3). Ik gebruik python -m venv venv
al heel lang en heb nooit een alternatief nodig gehad.