virtualenv
Différences
Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentesRévision précédenteProchaine révision | Révision précédenteDernière révisionLes deux révisions suivantes | ||
virtualenv [2021/05/29 13:19] – [Initialisation] serge | virtualenv [2022/05/05 10:19] – [Version de python] serge | ||
---|---|---|---|
Ligne 6: | Ligne 6: | ||
</ | </ | ||
+ | =====Pense bêtes===== | ||
+ | <code bash> | ||
+ | # Installation initiale | ||
+ | sudo apt install python3-pip | ||
+ | python3 -m pip install --upgrade pip | ||
+ | |||
+ | # Dans le dossier du projet | ||
+ | python3 -m venv mon_env | ||
+ | source mon_env/ | ||
+ | python3 -m pip install -r requirements.txt | ||
+ | python3 -m pip install Pillow==7.1.1 | ||
+ | pip freeze > all_requirements.txt | ||
+ | </ | ||
+ | |||
+ | =====Version de python===== | ||
+ | Si vous avez plusieurs versions de python, vous devez remplacer | ||
+ | python3 | ||
+ | | ||
+ | par | ||
+ | python3.x | ||
+ | | ||
+ | ou x = 6 ou 7 ou 8 ou 9 ou 10 ou 11 ... | ||
+ | | ||
+ | | ||
=====Ressources===== | =====Ressources===== | ||
* **[[https:// | * **[[https:// | ||
Ligne 11: | Ligne 35: | ||
===== Installation d'un package sans environnement virtuel ===== | ===== Installation d'un package sans environnement virtuel ===== | ||
- | * **[[https:// | + | |
- | < | + | < |
- | python3.7 -m pip install psutil --user | + | python3 -m pip install psutil --user |
- | python3.7 -m mon_fichier.py | + | python3 -m mon_fichier.py |
</ | </ | ||
- | Notez le –user, ainsi que les deux usages de -m.\\ | + | Notez le –user, ainsi que les -m.\\ |
- | Ceci va installer psutil | + | Ceci va installer psutil |
+ | |||
+ | Si besoin, ajouter à ~.bashrc | ||
+ | <code bash> | ||
+ | ====Liste des package installés localement==== | ||
+ | Donc sans les packages du système et les packages installés dans le système. | ||
+ | python3 -m pip list --user | ||
===== Environnement Virtuel ===== | ===== Environnement Virtuel ===== | ||
Ligne 25: | Ligne 55: | ||
<code bash> | <code bash> | ||
# Mise à jour de pip | # Mise à jour de pip | ||
- | python3.7 -m pip install --upgrade pip | + | python3 -m pip install --upgrade pip |
# Installation de venv | # Installation de venv | ||
sudo apt install python3-venv | sudo apt install python3-venv | ||
</ | </ | ||
+ | =====Ressources===== | ||
+ | * **https:// | ||
+ | |||
==== Initialisation ==== | ==== Initialisation ==== | ||
<code bash> | <code bash> | ||
Ligne 38: | Ligne 71: | ||
# le prompt devient (mon_env) machin@127:/ | # le prompt devient (mon_env) machin@127:/ | ||
# Installation des package | # Installation des package | ||
- | python3 -m pip install wheel # bug debian ubuntu | ||
python3 -m pip install -r requirements.txt | python3 -m pip install -r requirements.txt | ||
# Installation d'un package supplémentaire | # Installation d'un package supplémentaire | ||
Ligne 45: | Ligne 77: | ||
pip freeze > requirements.txt | pip freeze > requirements.txt | ||
</ | </ | ||
+ | |||
+ | ====Arguments spécifiques==== | ||
+ | |||
+ | ===Installation avec les sources dans un dossier=== | ||
+ | <code bash> | ||
+ | |||
+ | ===Avec accès aux package système=== | ||
+ | * https:// | ||
+ | |||
+ | Permet à python du venv d' | ||
+ | <code bash> | ||
+ | | ||
+ | --no-site-packages est la valeur par défaut | ||
+ | |||
+ | ===Depuis un Git=== | ||
+ | <code bash> | ||
====Exécution d'un script de votre projet==== | ====Exécution d'un script de votre projet==== | ||
Ligne 50: | Ligne 98: | ||
cd / | cd / | ||
./ | ./ | ||
- | |||
# Dans Geany, commande de construction | # Dans Geany, commande de construction | ||
../ | ../ | ||
Ligne 56: | Ligne 103: | ||
==== Relance pour installer de nouveaux package ==== | ==== Relance pour installer de nouveaux package ==== | ||
- | | + | <code bash> |
- | source mon_env/ | + | cd / |
- | python3 -m pip install some_package | + | source mon_env/ |
- | # Mise à jour des requirements | + | python3 -m pip install some_package |
- | pip freeze > requirements.txt | + | # Mise à jour des requirements |
+ | pip freeze > requirements.txt | ||
+ | </ | ||
==== Génération du fichier 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 | + | Pour faciliter la distribution de votre projet dans son virtualenv, il est recommandé de produire un fichier requirements.txt qui listera toutes les dépendances |
C'est la liste de tous les paquets que vous avez installé pour votre projet. | C'est la liste de tous les paquets que vous avez installé pour votre projet. | ||
- | | + | <code bash>pip freeze > requirements.txt</ |
- | + | ||
| | ||
- | =====Création d'un venv avec une autre version de pythotn===== | + | =====Création d'un venv avec une autre version de python===== |
Installation de python 3.8 sur Xubuntu 18.04 | Installation de python 3.8 sur Xubuntu 18.04 | ||
* https:// | * https:// | ||
- | + | <code bash> | |
- | sudo apt update | + | sudo apt update |
- | sudo apt install software-properties-common | + | sudo apt install software-properties-common |
- | sudo add-apt-repository ppa: | + | sudo add-apt-repository ppa: |
- | sudo apt install python3.8 | + | sudo apt install python3.8 |
+ | </ | ||
Création d'un venv | Création d'un venv | ||
<code bash> | <code bash> | ||
Ligne 94: | Ligne 141: | ||
{{: | {{: | ||
{{: | {{: | ||
- | =====Installation d'un package avec pip===== | ||
- | |||
- | |||
{{tag> | {{tag> |
virtualenv.txt · Dernière modification : 2022/05/06 15:49 de serge