web-dev-qa-db-fra.com

Comment puis-je changer l'interpréteur Python dans un environnement virtuel (Ubuntu 18.04LTS))?

Jusqu'à présent, j'ai toujours utilisé Anaconda sur Windows et j'ai pu configurer un environnement tout en choisissant quel Python utiliser. Par exemple, conda create -n myEnvName python=3.7

Maintenant, je veux me familiariser avec Ubuntu 18.04 LTS et utiliser les environnements basiques Python.

J'ai donc suivi ces étapes:

  1. Dossier créé dans mon home = ~/.venvPython
    • (a) Je pense que j'avais déjà un 2.7 et 3.6 par défaut sur l'OS.
    • (b) Je ne me souviens pas avec certitude, je pense que je devais faire ça Sudo apt-get install python3-venv.
  2. L'environnement créé de cette façon après le CD dans le dossier .venvPython a exécuté ceci: python3 -m venv venv1BigDataPgm2
  3. source ~/.venvPython/venv1BigDataPgm2/bin/activate
  4. Commande python --version dit: Python 3.6.9

Fonctionnement whereis Python montre ceci:

rohit@rohitUb18043LTS:~$ whereis python
python: /usr/bin/python3.6 /usr/bin/python3.6-config /usr/bin/python2.7-config /usr/bin/python3.6m-config /usr/bin/python /usr/bin/python3.6m /usr/bin/python2.7 /usr/lib/python3.8 /usr/lib/python3.7 /usr/lib/python3.6 /usr/lib/python2.7 /etc/python3.6 /etc/python /etc/python2.7 /usr/local/lib/python3.6 /usr/local/lib/python2.7 /usr/include/python3.6 /usr/include/python3.6m /usr/include/python2.7 /usr/share/python /usr/share/man/man1/python.1.gz

Mes doutes: Puis-je spécifier une version Python directement lors de la création de l'environnement comme avec conda? Comment puis-je changer cela en un autre interpréteur au lieu du 3.6.9? Dois-je installer manuellement un autre Python d'abord, puis le pointer d'une manière ou d'une autre?)

Guidez-moi s'il-vous-plaît. Je vous remercie. Rohit

6
rbewoor

Habituellement, lorsque je suis sous Linux et que je n'ai pas besoin d'une version spécifique de python3, je crée des environnements natifs python3.

python3 -m venv myenv
source myenv/bin/activate

Mais si j'ai besoin d'une version spécifique de python3, Miniconda les environnements sont légers et fonctionnent très bien.

conda create -n myenv python=3.6
conda activate myenv

Pour utiliser une version spécifique de python3 avec des environnements natifs, vous devez installer cette version en utilisant le gestionnaire de paquets indigène (par exemple apt).

0
Redowan Delowar

Une alternative à cela est de toujours spécifier la version python que vous souhaitez utiliser lors de l'exécution d'un script.

python3.6 test_script.py
0
Amine Ben Moussa

Ubuntu et les autres systèmes basés sur Debian sont généralement livrés selon Python était actuelle et jugée suffisamment testée lors de la publication de la version; après cela, seules les mises à jour de sécurité qui conservent le numéro de version mais ajoutent des correctifs sont publiées ( donc vous pourriez obtenir 3.6.9-123security4 au lieu de 3.6.9-5 ou ce qui était en cours lorsque la version a été coupée).

Si vous souhaitez exécuter une version spécifique Python sur l'une de ces plates-formes, voyez si vous pouvez trouver une source Apt qui fournit cette version pour votre système (Ubuntu a une base souple de PPA non officiels de divers Debian a backports) ou installez-le vous-même à partir des sources. Il existe des modules complémentaires comme pyenv qui vous permettent de le faire assez facilement, en toute sécurité et de manière transparente.

Il peut également y avoir un package existant qui vous donne une version plus récente particulière; par exemple, vous pouvez faire apt install python3.7 et apt install python3.8 sur Ubuntu 18.04, mais il n'y a pas de packages pour 3.5 ou 3.9. Essayez apt policy python3.7 pour voir quelle version mineure spécifique est disponible à partir de l'archive du package Ubuntu.

0
tripleee