Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
python [Le 25/07/2026, 20:54] – [PipX] installer krodelabestiolepython [Le 13/10/2026, 04:36] (Version actuelle) – [Éditeurs Python] +zed krodelabestiole
Ligne 1: Ligne 1:
-{{tag>programmation}}+{{tag>programmation langage}}
  
 {{ https://raw.githubusercontent.com/python/cpython/refs/heads/main/PC/icons/logo.svg?96|Logo de Python}} {{ https://raw.githubusercontent.com/python/cpython/refs/heads/main/PC/icons/logo.svg?96|Logo de Python}}
-====== Langage de programmation Python ======+====== Python ======
  
 **[[wpfr>Python_(langage)|Python]]** est un langage de programmation [[wpfr>Interprète_(informatique)|interprété]], [[wpfr>Programmation_orientée_objet|orienté objet]], qui permet de développer toutes sortes de projets, de scripts simples aux [[:web#applications web]]. Il est en outre utilisé par de nombreux outils [[:système]] d'Ubuntu. **[[wpfr>Python_(langage)|Python]]** est un langage de programmation [[wpfr>Interprète_(informatique)|interprété]], [[wpfr>Programmation_orientée_objet|orienté objet]], qui permet de développer toutes sortes de projets, de scripts simples aux [[:web#applications web]]. Il est en outre utilisé par de nombreux outils [[:système]] d'Ubuntu.
Ligne 11: Ligne 11:
 Pour connaître la version installée, entrer la [[:commande shell|commande]] ''python3 -V''. Pour connaître la version installée, entrer la [[:commande shell|commande]] ''python3 -V''.
  
-**Python** est très populaire. Il est donc aussi devenu un immense écosystème modulaire, composé d'une importante quantité de bibliothèques, dont peut dépendre tout projet. Celles-ci sont centralisées sur le dépôt [[https://pypi.org/|PyPI]] est peuvent être gérées avec ''[[man>pip3]]''.+**Python** est très populaire. Il est donc aussi devenu un immense écosystème modulaire, composé d'une importante quantité de bibliothèques, dont peut dépendre tout projet. Celles-ci sont centralisées sur le dépôt [[https://pypi.org/|PyPI]] est peuvent être gérées avec ''[[#pip3]]''.
  
 <note> <note>
 Pour plus d'information sur la programmation en Python, voir le portail //[[:programmation#python|Programmation]]//. Pour plus d'information sur la programmation en Python, voir le portail //[[:programmation#python|Programmation]]//.
 </note> </note>
 +
 +===== Environnements virtuels/isolés =====
 +
 +Sur Ubuntu, **Python** est étroitement lié au [[:système]] : il est utilisé par de nombreux outils fournissant des fonctionnalités essentielles à l'ordinateur. Pour une utilisation avancée, mieux vaut donc éviter d'utiliser la version native, installée par défaut (donc la commande ''[[man>python3]]''), ou ''[[#pip3]]'', son gestionnaire de dépendances associé.
 +
 +C'est là qu'interviennent différentes solutions pour initier et gérer des environnements virtuels (ou isolés) et utiliser les versions de son choix avec les dépendances de son choix sans interférer avec le système (à la manière de //[[:docker|containers]]//, en plus simple) . Certaines se présentent directement sous la forme de [[#gestionnaires de dépendances]].
 +
 +==== venv ====
 +
 +**[[:tutoriel:python-virtualenv|virtualenv]]** est la solution de base, fournie par l'écosystème Python.
  
 ===== Gestionnaires de dépendances ===== ===== Gestionnaires de dépendances =====
Ligne 34: Ligne 44:
  
 <note>Pour la gestion des dépendances avec **pip**, voir le chapitre //[[#Modules/dépendances]]// ci-dessous.</note> <note>Pour la gestion des dépendances avec **pip**, voir le chapitre //[[#Modules/dépendances]]// ci-dessous.</note>
- 
-===== Environnements virtuels/isolés ===== 
- 
-Sur Ubuntu, **Python** est étroitement lié au [[:système]] : il est utilisé par de nombreux outils fournissant des fonctionnalités essentielles à l'ordinateur. Pour une utilisation avancée, mieux vaut donc éviter d'utiliser la version native, installée par défaut (donc la commande ''[[man>python3]]''), ou ''[[man>pip3]]'', son gestionnaire de dépendances associé. 
- 
-C'est là qu'interviennent différentes solutions pour initier et gérer des environnements virtuels (ou isolés) et utiliser les versions de son choix avec les dépendances de son choix sans interférer avec le système (à la manière de //[[:docker|containers]]//, en plus simple) : 
- 
-==== venv ==== 
- 
-**[[:tutoriel:python-virtualenv|virtualenv]]** est la solution de base, fournie par l'écosystème Python. 
  
 ==== PipX ==== ==== PipX ====
Ligne 54: Ligne 54:
 <code bash>pipx run --spec dependence python3 script.py</code> <code bash>pipx run --spec dependence python3 script.py</code>
 où ''dependence'' est une bibliothèque **Python** dont dépend ''script.py''. où ''dependence'' est une bibliothèque **Python** dont dépend ''script.py''.
 +
 +En dehors de ces fonctionnalités spécifiques, ''[[man>pipx]]'' s'utilise de manière relativement similaire à ''[[man>pip3]]''.
  
 ==== Pixi ==== ==== Pixi ====
Ligne 95: Ligne 97:
 | [[:eric|Eric Ide]] |**Y** | F |Y | Y |Y |Y |Y |Y |Y |Y | Y |Y |Y |Y |Y¹ |Y²|   |¹QtDesigner ²Navigateur SQL intégré| | [[:eric|Eric Ide]] |**Y** | F |Y | Y |Y |Y |Y |Y |Y |Y | Y |Y |Y |Y |Y¹ |Y²|   |¹QtDesigner ²Navigateur SQL intégré|
 | E-Texteditor       |W     |   |  |   |  |  |  |  |  |  |   |  |  |  |   |  |   |        | | E-Texteditor       |W     |   |  |   |  |  |  |  |  |  |   |  |  |  |   |  |   |        |
-| [[:Geany]]         |**Y** | F |Y*| Y |  |  |  |Y |Y |Y |   |Y |  |  |   |  |   |*très limité|+| [[:Geany]]         |**Y** | F |Y%%*%%| Y |  |  |  |Y |Y |Y |   |Y |  |  |   |  |   |%%*%%très limité|
 | [[:Gedit]]         |**Y** | F |Y¹| Y |  |  |  |Y |Y |Y |   |  |Y²|  |   |  |   |¹avec extension ²plus ou moins| | [[:Gedit]]         |**Y** | F |Y¹| Y |  |  |  |Y |Y |Y |   |  |Y²|  |   |  |   |¹avec extension ²plus ou moins|
 | [[:Idle]]          |**Y** | F |Y |   |  |  |  |  |  |  |   |  |  |  |   |  |   |        | | [[:Idle]]          |**Y** | F |Y |   |  |  |  |  |  |  |   |  |  |  |   |  |   |        |
Ligne 106: Ligne 108:
 | Pfaide             |W     | C |Y | Y |  |  |  |Y |Y |Y |   |Y |Y |  |   |  |   |        | | Pfaide             |W     | C |Y | Y |  |  |  |Y |Y |Y |   |Y |Y |  |   |  |   |        |
 | PIDA               |**L**W| F |Y | Y |  |  |  |Y |Y |Y |   |Y |  |  |   |  |   |basé sur [[:VIM]]| | PIDA               |**L**W| F |Y | Y |  |  |  |Y |Y |Y |   |Y |  |  |   |  |   |basé sur [[:VIM]]|
-| PTVS               |W     | F |Y | Y |Y |Y |Y |Y |Y |Y |   |Y |  |  |Y* |  | Y |*basé sur WPF| +| PTVS               |W     | F |Y | Y |Y |Y |Y |Y |Y |Y |   |Y |  |  |Y%%*%% |  | Y |%%*%%basé sur WPF| 
-| [[:PyCharm]]       |**Y** | C |Y | Y*|Y |  |Y |Y |Y |Y |   |Y |  |Y |   |  |   |*JavaScript|+| [[:PyCharm]]       |**Y** | C |Y | Y%%*%%|Y |  |Y |Y |Y |Y |   |Y |  |Y |   |  |   |%%*%%JavaScript|
 | PyDev([[:Eclipse]])|**Y** | F |Y | Y |Y |Y |Y |Y |Y |Y | Y |Y |Y |Y |   |  |   |        | | PyDev([[:Eclipse]])|**Y** | F |Y | Y |Y |Y |Y |Y |Y |Y | Y |Y |Y |Y |   |  |   |        |
 | Pyscripter         |W     | F |Y |   |Y |Y |  |Y |  |Y |   |  |Y |Y |   |  |   |        | | Pyscripter         |W     | F |Y |   |Y |Y |  |Y |  |Y |   |  |Y |Y |   |  |   |        |
Ligne 120: Ligne 122:
 | [[:Vim]]           |**Y** | F |Y | Y |Y |Y |Y |Y |Y |Y |   |Y |Y |Y |   |  |   |        | | [[:Vim]]           |**Y** | F |Y | Y |Y |Y |Y |Y |Y |Y |   |Y |Y |Y |   |  |   |        |
 | [[:visual_studio_code|VS Code/Codium]]|**Y**|F|Y|Y|Y|Y|Y|Y|Y|Y||Y|Y |Y  |  |   | [[https://code.visualstudio.com/docs/languages/python|module Python pour codium/VSC]]| | [[:visual_studio_code|VS Code/Codium]]|**Y**|F|Y|Y|Y|Y|Y|Y|Y|Y||Y|Y |Y  |  |   | [[https://code.visualstudio.com/docs/languages/python|module Python pour codium/VSC]]|
-| WingIde            |**Y** | C |Y | Y*|Y |Y |Y |Y |Y |Y |   |Y |Y |Y |   |  |   |*support de C+| WingIde            |**Y** | C |Y | Y%%*%%|Y |Y |Y |Y |Y |Y |   |Y |Y |Y |   |  |   |%%*%%support de C 
 +| [[:Zed]]           |**Y**|F|Y|Y|Y|Y|Y|Y|Y|Y||Y|Y |Y  |  |   | |
 | Zeus               |W     | C |  |   |  |  |Y |Y |Y |Y |   |Y |Y |  |   |  |   | | Zeus               |W     | C |  |   |  |  |Y |Y |Y |Y |   |Y |Y |  |   |  |   |
 ^ Nom                ^CP    ^C/F^AC^MLS^PD^EM^SC^SI^BM^LN^UML^CF^CT^UT^UID^DB^RAD^comments^ ^ Nom                ^CP    ^C/F^AC^MLS^PD^EM^SC^SI^BM^LN^UML^CF^CT^UT^UID^DB^RAD^comments^
Ligne 173: Ligne 176:
  
 Les dépendances (modules et autres métadonnées) peuvent être définies dans un fichier  Les dépendances (modules et autres métadonnées) peuvent être définies dans un fichier 
-  * ''requirements.txt # qu'on installe avec : pip install -r requirement.txt''+  * ''requirements.txt # qu'on utilise avec : pip install -r requirements.txt''
 ou mieux encore dans un fichier  ou mieux encore dans un fichier 
-  * ''pyproject.toml'' ((défini dans la [[https://peps.python.org/pep-0621/|PEP-0621]], cf. [[https://packaging.python.org/en/latest/specifications/pyproject-toml/]])) qui permet de définir des sections (''debug'', ''dev''…) et des métadonnées.+  * ''pyproject.toml # qu'on utilise avec : pip install -e .'' ((défini dans la [[https://peps.python.org/pep-0621/|PEP-0621]], cf. [[https://packaging.python.org/en/latest/specifications/pyproject-toml/]])) qui permet de définir des sections (''debug'', ''dev''…) et des métadonnées, 
  
 ==== IDLE 3 ==== ==== IDLE 3 ====