Ceci est une ancienne révision du document !
Table des matières
Python: Virtualenv
Toutes les pages sur Python sans les pages sur Kivy
English Version
Ressources
- Le tutoriel Python de la fondation Python fr.
- Environnements virtuels et paquets sur la Doc officielle docs.python.org
Installation d'un package sans environnement virtuel
Source: sametmax
python3.7 -m pip install psutil --user python3.7 -m mon_fichier.py
Notez le –user, ainsi que les deux usages de -m.
Ceci va installer psutil localement, pas au niveau du système. On s’assure qu’on n’utilise bien Python3.6, à l’installation et à l’usage de psutil. Et comme on n’utilise -m, pas besoin de trifouiller son .bashrc
Environnement Virtuel
Installation de venv
# Mise à jour de pip python3.7 -m pip install --upgrade pip sudo apt install python3-venv
Initialisation
cd /le/dossier/de/votre/projet/truc/ # Création du dossier environnement si pas encore créé python3 -m venv mon_env # Activation source mon_env/bin/activate # le prompt devient (mon_env) machin@127:/../../../projets/truc/ # Installation des package python3 -m pip install wheel # bug debian ubuntu python3 -m pip install -r requirements.txt # Installation d'un package supplémentaire python3 -m pip install Pillow==7.1.1 # Création ou re-création des requirements pip freeze > requirements.txt
Exécution d'un script de votre projet
cd /le/dossier/de/votre/projet/truc/ ./mon_env/bin/python3 ./sous_dossier/main.py # Dans Geany, commande de construction ../mon_env/bin/python3 "%f"
Relance pour installer de nouveaux package
cd /le/dossier/de/votre/projet/truc/ source mon_env/bin/activate python3 -m pip install some_package # Mise à jour des requirements pip freeze > requirements.txt
Création d'un dossier tutorial-env dans le dossier de votre projet toto: /../../../projets/toto/
/../../../projets/toto/$ python3 -m venv mon_env
Activation de l'environnement:
source mon_env/bin/activate
le prompt devient (tutorial-env) mon_env@127:/../../../projets/toto/
pour voir où vous êtes et tester
ls python3 import sys
Ctrl + D pour quitter
Installation d'un paquet dans cet environnement
python3 -m pip install Pillow==7.1.1
Successfully installed Pillow-7.1.1, pour voir les infos
pip show Pillow
pip list liste tous les paquets installés dans l'environnement virtuel:
pip list
Package Version ------------- ------- Pillow 7.1.1 pip 18.1 pkg-resources 0.0.0 setuptools 40.8.0
Installation de tous les paquets requis
python3 -m pip install -r requirements.txt
Génération du fichier requirements.txt
Pour faciliter la distribution de votre projet dans son virtualenv, il est recommandé de produire un fichier requirements.txt qui listera toutes les dependances de votre projet.
C'est la liste de tous les paquets que vous avez installé pour votre projet.
pip freeze > requirements.txt
Création d'un venv avec une autre version de pythotn
Installation de python 3.8 sur Xubuntu 18.04
sudo apt update sudo apt install software-properties-common sudo add-apt-repository ppa:deadsnakes/ppa sudo apt install python3.8
Création d'un venv
cd /mes/projets/keras-jordan-bird/ python3.8 -m venv mon_env sudo apt install python3.8-venv python3.8-dev python3.8 -m venv mon_env source mon_env/bin/activate python3.8 -m pip install -r requirements.txt
Lancer correctement python
Ne faites pas:
sudo pip install black black mon_fichier.py
Mais faites:
python3.7 -m pip install black --user python3.7 -m black mon_fichier.py
Notez le –user, ainsi que les deux usages de -m.
Ceci va installer black localement, pas au niveau du système. On s’assure qu’on n’utilise bien Python3.6, à l’installation et à l’usage de black. Et comme on n’utilise -m, on a pas à se demander si la commande black est bien sur le PATH (pas besoin de trifouiller son .bashrc)
Travailler avec Geany et un Virtual Env
Dans “Construire” / “Définir les commandes de construction”:
mon_env/bin/python3 "%f"
Installation d'un package avec pip
Installer un package
Le package est installé dans le home du user:
python3.7 -m pip install black --user
Pour lancer un script:
python3.7 -m mon_fichier.py
Mettre à jour pip
python3.7 -m pip install --upgrade pip
Si vous avez cette alerte:
WARNING: The scripts pip, pip3 and pip3.7 are installed in '/home/toto/.local/bin' which is not on PATH. Consider adding this directory to PATH or, if you prefer to suppress this warning, use --no-warn-script-location.
Ajouter au fichier ~/.bashrc
# Pour pip, pip3 and pip3.7 export PYTHONPATH="${PYTHONPATH}:/home/toto/.local/bin"