J'ai installé python3-virtualenv
sur Lubuntu 15.1 en utilisant le package officiel Ubuntu apt-get install python3-virtualenv
. La documentation officielle indique qu'un simple virtualenv .
dans mon répertoire de projet devrait être suffisant pour créer le venv. Cela ne fait rien, car which virtualenv
ne fait rien. (Rien de which python-virtualenv
et which python3-virtualenv
aussi).
Les informations sur le paquet, une fois installé, indiquent qu'il a installé /usr/lib/python3/dist-packages/virtualenv.py
, donc j'invoque cela sous python3. Cela me donne ceci:
$ python3 /usr/lib/python3/dist-packages/virtualenv.py .
Running virtualenv with interpreter /usr/bin/python2
New python executable in ./bin/python2
Also creating executable in ./bin/python
Installing setuptools, pip...done.
Oui, quand je regarde, tout dans ./bin est python2. Python3-virtualenv d'ubuntu est-il un paquet factice pour python2?
La documentation officielle de python indique d'utiliser un package différent: python3-venv . Cela semble fonctionner quand je pyvenv .
, avec des trucs python3 dans le ./bin
répertoire.
Comment créer avec succès un virtualenv Python 3?
la source
Réponses:
venv
est un script pratique pour créer des envs virtuels, mais ne remplace pas complètement tout ce quevirtualenv
peut faire. Cependant, l'utilisation de l'un ou l'autre est très bien dans la plupart des cas.virtualenv
n'est pas obsolète.python3 -m venv
fonctionne après l'installationpython3-venv
car Debian supprime certains scripts du paquet Python de base.python3-virtualenv
ne place pas levirtualenv
script sur votre chemin pour une raison quelconque, mais lepython-virtualenv
fait et fonctionnera bien pour l'une ou l'autre version.Il n'est pas important pour quelle version
virtualenv
est installée, il peut produire des envs pour n'importe quelle version installée en passant-p pythonX
(où X est la version).venv
, étant plus simple, ne créera que des envs de la version à partir de laquelle il est exécuté, et n'est disponible que depuis la 3.3.la source