Présentation de Python et de l'environnement de développement
Introduction
Ce chapitre présente le langage Python (version 3) et les outils nécessaires pour commencer à développer. Avant d'écrire les premières instructions, il est nécessaire de préparer votre environnement de développement. Pour ce faire, nous utiliserons l'éditeur de code Visual Studio Code.
Présentation du langage Python
Python est un langage de programmation généraliste qui prend en charge différentes approches de programmation, telles que la programmation impérative, la programmation orientée objet et certains mécanismes de programmation fonctionnelle. Son apprentissage s'appuie donc sur des notions déjà connues des développeurs C#.
CPython est l'implémentation de référence du langage Python. Il compile le code source en un code intermédiaire appelé bytecode, puis exécute ce bytecode.
Deux manières d'exécuter du code
Via la console interactive
La console interactive permet de saisir une instruction et d'obtenir immédiatement son résultat. Elle convient pour vérifier une expression ou exécuter une fonctionnalité.
Sous Windows, ouvrons un terminal PowerShell et exécutons l'instruction suivante :
Cette instruction permet d'exécuter la version 3 de l'interpréteur installée sur le poste de développement. L'invite >>> indique que l'interpréteur attend du code Python :
Pour sortir de l'environnement, exécutons l'instruction exit().
Les scripts
Un script est un fichier contenant du code Python, dont l'extension est .py. Contrairement à la console interactive, l'exécution d'une expression dans un script n'affiche pas automatiquement son résultat. Pour afficher une valeur, on peut utiliser la fonction print.
Présentation de Visual Studio Code
Visual Studio Code est un éditeur de code extensible développé par Microsoft. Ses extensions permettent de disposer des fonctionnalités nécessaires au développement Python : autocomplétion, analyse du code, exécution des programmes et débogage.
Installer les outils
Télécharger Python 3 depuis python.org et suivre les instructions d'installation pour Windows. Ensuite, ouvrons un nouveau terminal et vérifions l'installation :
La commande doit afficher une version de Python 3.
Installer Visual Studio Code, puis ouvrir la vue des extensions et installer les extensions indiquées ci-dessous. L'installation de l'extension Python de Microsoft dans Visual Studio Code entraîne, par défaut, l'installation automatique de trois extensions complémentaires : Pylance, Python Debugger et Python Environments.
| Extension | Éditeur | Rôle |
|---|---|---|
| Python | Microsoft | Extension principale : exécution des fichiers Python, sélection de l'interpréteur et intégration des tests |
| Pylance | Microsoft | Autocomplétion, aide sur les fonctions, navigation dans le code et analyse des types |
| Python Debugger | Microsoft | Débogage : points d'arrêt, exécution pas à pas et inspection des variables |
| Python Environments | Microsoft | Gestion des environnements Python et des paquets |
| Mypy Type Checker | Microsoft | Analyse le code Python et signale les erreurs de typage sans exécuter le code |
| Ruff | Astral | Détecte des problèmes de code, corrige certaines erreurs, organise les imports et formate le code |
Préparer un dossier et un environnement virtuel
Créons un dossier nommé decouverte-python, puis ouvrons-le dans Visual Studio Code. Un environnement virtuel permet d'isoler les bibliothèques installées pour un projet. Deux projets peuvent ainsi utiliser des versions différentes d'une même bibliothèque.
Ouvrons la palette de commandes avec Ctrl+Shift+P, puis :
- Exécutons Python: Create Environment.
- Choisissons Venv.
- Sélectionnons l'interpréteur Python installé.
- Vérifions avec Python: Select Interpreter que l'environnement
.venvest sélectionné.
Le dossier .venv contient l'environnement local. Il ne doit pas être ajouté au dépôt Git ; ajoutons .venv/ au fichier .gitignore.
Pour identifier l'interpréteur réellement utilisé, exécutons le code suivant dans un fichier Python :
Le chemin affiché doit correspondre à l'environnement choisi.
Écrire et exécuter un premier programme
Créons un fichier bonjour.py à la racine du dossier, puis saisissons :
Le préfixe f permet d'insérer une valeur dans une chaîne de caractères. Ce mécanisme rappelle l'interpolation avec $ en C#.
Enregistrons le fichier et lançons Python: Run Python File in Terminal depuis la palette de commandes. Le terminal doit afficher :
Cet exemple n'a pas besoin d'une classe ou d'une méthode d'entrée explicite : les instructions au niveau du module sont exécutées lors du lancement du script.
Le débogueur
Positionnons un point d'arrêt sur la ligne print(message) en cliquant dans la marge à gauche du numéro de ligne. Appuyons sur la touche F5 et, si une configuration nous est demandée, choisissons Python Debugger, puis Python File.
Lorsque l'exécution s'arrête, observons les valeurs des variables prenom et message dans la vue des variables. Nous pouvons ensuite avancer pas à pas avec la touche F10 ou poursuivre avec la touche F5.
Mise en pratique
Modifions le programme pour définir un prix unitaire de 79 et une quantité de 10. Calculons le montant total et affichons-le. Positionnons un point d'arrêt avant l'affichage pour vérifier les valeurs :
prix_unitaire = 79
quantite = 10
montant_total = prix_unitaire * quantite
print(f"Montant total : {montant_total}")
L'affichage attendu est Montant total : 790.
Utilisation de Mypy Type Checker
Mypy Type Checker est une extension de Visual Studio Code qui intègre l'outil d'analyse statique Mypy. Il détecte des erreurs de typage dans le code Python sans l'exécuter. Il s'appuie sur les annotations de type pour vérifier la cohérence des affectations et des appels de fonctions.
Par exemple, dans un fichier example.py :
Mypy Type Checker signale que la chaîne de caractères affectée à la variable age est incompatible avec le type int attendu.
Pour un développeur C#, cette vérification rappelle certains contrôles de types effectués par le compilateur. Elle reste toutefois facultative. En tant qu'outil, Mypy Type Checker n'interdit pas l'exécution du code.
Utilisation de Ruff
Ruff, développé par Astral, est un outil d'analyse statique et de formatage du code Python. Il permet de :
- Détecter des problèmes : imports inutilisés, noms non définis et non-respect de certaines conventions.
- Corriger automatiquement une partie des problèmes détectés.
- Formater le code pour harmoniser sa présentation.
Ses règles sont configurables selon les besoins du projet. Ruff complète Mypy, en se concentrant sur la qualité et la présentation du code, tandis que Mypy vérifie la cohérence des types.