... | @@ -10,11 +10,11 @@ _Mots_clefs _: : installation, pip et conda, versions, |
... | @@ -10,11 +10,11 @@ _Mots_clefs _: : installation, pip et conda, versions, |
|
|
|
|
|
:construction_worker: :construction: ATTENTION, pages en restructuration
|
|
:construction_worker: :construction: ATTENTION, pages en restructuration
|
|
|
|
|
|
</details>![Capture_PythonInterpreter](uploads/c5d2d3ebd14cecd20db408cbf2f892cd/Capture_PythonInterpreter.JPG)
|
|
**Sommaire**
|
|
|
|
[TOC]
|
|
|
|
|
|
|
|
|
|
## Sommaire
|
|
|
|
|
|
|
|
[TOC]
|
|
|
|
|
|
|
|
## 1. Première installation de Python et ses bibliothèques : classique ou conda ?
|
|
## 1. Première installation de Python et ses bibliothèques : classique ou conda ?
|
|
|
|
|
... | @@ -115,16 +115,59 @@ Sous Windows |
... | @@ -115,16 +115,59 @@ Sous Windows |
|
Le prompt change alors en :
|
|
Le prompt change alors en :
|
|
`(mon_venv) chemin_courant >`
|
|
`(mon_venv) chemin_courant >`
|
|
|
|
|
|
|
|
On peut alors travailler dans l'environnement, et notamment installer des modules :
|
|
|
|
|
|
|
|
`(mon_venv) chemin_courant >py -m pip install scipy`
|
|
|
|
`(mon_venv) chemin_courant >py -m pip freeze > requirements.txt`
|
|
|
|
|
|
|
|
Pour quitter : `deactivate`.
|
|
|
|
|
|
## 4. Distribuer un code en précisant toutes les dépendances
|
|
## 4. Distribuer un code en précisant toutes les dépendances
|
|
|
|
|
|
### fichier des modules obtenus avec pip freeze
|
|
### fichier des modules obtenus avec pip freeze
|
|
`pip freeze` génère la liste des modules installés, avec leur version.
|
|
`pip freeze` génère la liste des modules installés, avec leur version.
|
|
Le signe de redirection `>` permet d'envoyer cette liste dans un fichier, habituellement appelé "requirements.txt". Le destinataire du fichier n'aura plus qu'à créer un environnement similaire.
|
|
Le signe de redirection `>` permet d'envoyer cette liste dans un fichier, habituellement appelé "requirements.txt". Le destinataire du fichier n'aura plus qu'à créer un environnement similaire.
|
|
|
|
Attention cependant, le fichier txt contient les noms de modules et leurs dépendances, donc l'utilisateur ne sait pas forcément lesquels doivent être installés et lesquels s'installeront automatiquement en même temps que d'autres.
|
|
|
|
|
|
|
|
`(mon-env)> pip freeze > requirements.txt`
|
|
|
|
|
|
|
|
### module Poetry
|
|
|
|
Le [module Poetry](https://python-poetry.org/) permet de faciliter le travail du destinataire des scripts, car il se chargera aussi de réinstaller les modules nécessaires.
|
|
|
|
|
|
|
|
**Intaller Poetry**
|
|
|
|
Poetry s'installe comme n'importe quel module, dans l'environnement virtuel activé:
|
|
|
|
|
|
|
|
|
|
|
|
`(mon_venv) chemin_courant >py -m pip install poetry`
|
|
|
|
|
|
`(mon-env) $ pip freeze > requirements.txt`
|
|
`(mon_venv) chemin_courant >poetry init` va créer un fichier `pyproject.toml`
|
|
|
|
|
|
### fichier Poetry
|
|
> This command will guide you through creating your pyproject.toml config.
|
|
|
|
> Package name [2022-test-anguilles-git]:
|
|
|
|
|
|
|
|
![poetry_init](uploads/d1f4514b95724d1e7ab8138e452ff287/poetry_init.png)
|
|
|
|
|
|
|
|
```
|
|
|
|
[tool.poetry]
|
|
|
|
name = "2022-test-anguilles-git"
|
|
|
|
version = "0.1.0"
|
|
|
|
description = "Code de traitement de chroniques QJ spécifiquement développé pour Migrateurs"
|
|
|
|
authors = ["C. Poulard, INRAE"]
|
|
|
|
|
|
|
|
[tool.poetry.dependencies]
|
|
|
|
python = "^3.10"
|
|
|
|
|
|
|
|
[tool.poetry.dev-dependencies]
|
|
|
|
|
|
|
|
[build-system]
|
|
|
|
requires = ["poetry-core>=1.0.0"]
|
|
|
|
build-backend = "poetry.core.masonry.api"
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
|
|
Poetry distingue une version "développement", avec des modules dont l'utilisateur des scripts n'aura pas besoin (comme **black**, pour formater le code ):
|
|
|
|
`(mon_venv) chemin_courant > poetry add mon_module`
|
|
|
|
`(mon_venv) chemin_courant > poetry add -d mon_module_pour_dev`
|
|
|
|
|
|
## Quelques ressources :
|
|
## Quelques ressources :
|
|
|
|
|
... | @@ -330,4 +373,9 @@ Un environnement virtuel permet d’avoir des installations de Python isolées e |
... | @@ -330,4 +373,9 @@ Un environnement virtuel permet d’avoir des installations de Python isolées e |
|
|
|
|
|
## Gestion des paquets avec votre IDE
|
|
## Gestion des paquets avec votre IDE
|
|
|
|
|
|
Vous pouvez aussi gérer tout cela depuis votre IDE. Voir la doc selon votre IDE ; cette partie sera complétée au besoin |
|
Vous pouvez aussi gérer tout cela depuis votre IDE. Voir la doc selon votre IDE ; cette partie sera complétée au besoin.
|
|
\ No newline at end of file |
|
|
|
|
|
Pour PyCharm, les informations se trouvent dans File/Settings/Project/Python Interpreter.
|
|
|
|
L'interface est pratique dans ce cas car on peut comparer pour chaque module la version installée et la dernière version disponible.
|
|
|
|
|
|
|
|
</details>![Capture_PythonInterpreter](uploads/c5d2d3ebd14cecd20db408cbf2f892cd/Capture_PythonInterpreter.JPG) |
|
|
|
\ No newline at end of file |