Langage de programmation Python
Python est un langage de programmation interprété, orienté objet, dont l'utilisation va des scripts systèmes aux applications web.
Il est régi par une licence libre proche de la licence BSD et fonctionne sur la plupart des plateformes.
Programmer en Python
Pour plus d'information sur la programmation en Python, référez-vous au portail Programmation.
Par défaut, Python est installé sur GNU/Linux.
Sous Ubuntu par exemple, saisir "python" dans un terminal pour avoir accès à l'invite de commande Python. Pour connaître votre version de Python installé, tapez "python -V" dans le terminal.
Logiciel éditeur Python (IDE)
Les logiciels pour éditer des scripts python :
Nom | Cross Platform | Commercial ou Free | Auto Code Completion | Multi-Language Support | Integrated Python Debugging | Error Markup | Source Control Integration | Smart Indent | Bracket Matching | Line Numbering | UML Editing or Viewing | Code Folding | Code Templates | Unit Testing | GUI Designer | Integrated DB Support | Rapid Application Development | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
Nom | CP | C/F | AC | MLS | PD | EM | SC | SI | BM | LN | UML | CF | CT | UT | UID | DB | RAD | comments |
BlackAdder | Y | C | Y | Y | ||||||||||||||
BlueFish | L | |||||||||||||||||
Boa Constructor | Y | F | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||
ConTEXT | W | C | ||||||||||||||||
DABO | Y | |||||||||||||||||
DreamPie | F | |||||||||||||||||
Dr.Python | F | Y | ||||||||||||||||
Editra | Y | F | Y | Y | Y | Y | Y | Y | Y | |||||||||
Emacs | Y | F | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | ||||
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 | |||||||||||||||||
Geany | Y | F | Y* | Y | Y | Y | Y | Y | * very limited | |||||||||
Gedit | Y | F | Y¹ | Y | Y | Y | Y | Y² | ¹ with plugin ² sort of | |||||||||
Idle | Y | F | Y | |||||||||||||||
JEdit | Y | F | Y | Y | Y | Y | ||||||||||||
KDevelop | Y | F | 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 |
Komodo | Y | C/F | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | ||||
NetBeans | Y | F | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | ||||
NotePad++ | W | F | Y | Y | ||||||||||||||
Pfaide | W | C | Y | Y | Y | Y | Y | Y | Y | |||||||||
PIDA | LW | F | Y | Y | Y | Y | Y | Y | ||||||||||
PTVS | W | F | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y* | Y | |||||
PyCharm | Y | C | 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 | |||||||||
PythonWin | W | F | Y | Y | Y | Y | Y | |||||||||||
SciTE | Y | F | Y | Y | Y | Y | Y | Y | ||||||||||
ScriptDev | W | C | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||||
SPE | F | Y | Y | |||||||||||||||
Spyder/spyderlib | Y | F | Y | Y | Y | Y | Y | Y | ||||||||||
Sublime Text | Y | C | Y | Y | Y | Y | Y | Y | ||||||||||
TextMate | M | Y | Y | Y | Y | Y | Y | |||||||||||
UliPad | Y | F | Y | Y | Y | Y | Y | Y | Y | |||||||||
Vim | Y | F | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | Y | |||||
WingIde | Y | C | Y | Y* | Y | Y | Y | 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 |
Acronymes:
- CP - Cross Platform — { multi-plateformes }
- C - Commercial — { sous licence commerciale }
- F - Free — { sous licence gratuite }
- AC - Automatic Code-completion — { finalisation automatique du code }
- MLS - Multi-Language Support — { intégration multilingue }
- PD - Integrated Python Debugging { interface de débogage du code Python intégrée }
- EM - ErrorMarkup — { procédure de balisage d'erreurs }
- SC - Source Control integration — { procédure de contrôle du code source intégrée }
- SI - Smart Indent — { formatage intelligent du code source }
- BM - Bracket Matching — { fermeture automatique des différentes parenthèses }
- LN - Line Numbering — { numérotation automatique des lignes de code }
- UML - UML editing / viewing — { édition et visualisation du langage unifié de modélisation graphique }
- CF - Code Folding — { procédure de repli synthétique du code source }
- CT - Code Templates — { modélisation/prototypage du code source }
- UT - Unit Testing — { tests des unités de commandes }
- UID - GUI Designer (for example, Qt, Eric, ..) — { module de conception des interfaces graphiques dédiées à l'utilisateur }
- DB - integrated database support — { intégration et gestion des bases de données }
- RAD - Rapid application development support — { gestion de la modélisation/du développement accélérés des applications }
- L - Linux
- W - Windows
- M - Mac
Logiciels de création d'interface graphique
Les logiciels pour créer des interfaces graphiques pour python:
- QT Creator pour des interfaces en QT
Installation
Python 2
Python 2 est installé par défaut, il suffit de taper python
dans un terminal pour accéder à l'interpréteur.
Pour Bionic 18.04, c'est la version 2.7 qui est installée.
Please upgrade your Python as Python 2.7 won't be maintained after that date. A future version of pip will drop support for Python 2.7.
More details about Python 2 support in pip, can be found at https://pip.pypa.io/en/latest/development/release-process/#python-2-support
Python 3 et Ubuntu
Ubuntu 16.04
La dernière version (3.6) n'est pas dans les dépots de la dernière LTS 16.04.
La version 3.6 comporte des différences significatives par rapport à la version précédente (entre autres avec les F String) et peut être nécessaire.
Pour installer Python 3.6 avec Ubuntu 16.04, il faut ajouter un ppa :
- soit
jonathonf/python-3.6
- soit
deadsnakes/ppa
Puis on installe Python 3.6.
Les commandes complètes avec, par exemple, jonathon ppa :
$ sudo add-apt-repository ppa:jonathonf/python-3.6 $ sudo apt update $ sudo apt install python3.6
Pour invoquer l'interpréteur, il faut taper python3
ou python3.6
!
Ubuntu 18.04
Ubuntu 18.04 est livrée avec Python 3.6 par défaut, il suffit de taper python3
pour l'invoquer.
IDLE 3.6
Pour installer IDLE en version Python 3.6 (si on a déjà installé Python en 3.6), il suffit d'installer idle-python3.6
et on l'exécute en utilisant ce même nom.
iPython
Voici les instructions pour installer iPython (dans une version récente) sous 16.04, avec pip
:
(la première ligne installe pip3)
$ sudo apt install python3-pip $ pip3 install --upgrade pip $ sudo pip3 install jupyter $ sudo pip3 install ipython
Anaconda
Anaconda est une suite d'outils (plus de 200 paquets et plus de 500Mo) allant de l'éditeur Spyder au framework Qt et PyQt, en passant par jupyter pour les notebook, et de nombreuses librairies de programmation, pip et pep8…
Pour l'installer, reportez-vous à la page dédiée sur le site officiel:
https://docs.anaconda.com/anaconda/install/linux
La liste des paquets installés est visualisable via anaconda-navigator puis Environnements. En cas de soucis, pensez à mettre à jour le navigateur:
conda update anaconda-navigator
Miniconda
Pour limiter le nombre de paquets ou n'installer que le nécessaire, il existe aussi Miniconda qui n'installe que le gestionnaire de paquet conda
Utilisation
De nombreuses ressources sont disponibles sur le web pour apprendre à programmer en Python, reportez-vous aux liens de cette page
Debugger avec PDB
PDB est une solution de débuggage en ligne de commande similaire à GDB
Pour pouvoir l'utiliser, il suffit d'ajouter en début de votre fichier python la ligne:
import pdb; pdb.set_trace() # pour débugger… en ligne de commande !-)
Le pdb.set_trace() peut-être mis plus tard dans le code !
Pour débugger, lancer l'exécution de votre fichier:
python mon_script.py
ou dans vim:
:!python %
Reportez-vous à la doc de GDB ou à la doc officielle pour débugger (point d'arrêt, raccourcis…)
Logiciels liés à Python
Voici la liste des pages de la documentation présentant les logiciels liés au langage Python :
Voir aussi
- Python sur wikipedia [fr]
- Site officiel [en]
- Apprendre à programmer avec Python" - Gérard Swinnen [fr] librement téléchargeable à l'url: http://inforef.be/swi/download/apprendre_python3_5.pdf (version janv. 2012)
———
Date de création : 25 juin 2010.draco31.fr; Traduction des acronymes, correction grammaticale René Stoecklin;