Aller au contenu

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 :

py -3

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 :

>>> 10 + 20
30
>>> print("Python pour développeur C#")
Python pour développeur C#

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 :

py -3 --version

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 :

  1. Exécutons Python: Create Environment.
  2. Choisissons Venv.
  3. Sélectionnons l'interpréteur Python installé.
  4. Vérifions avec Python: Select Interpreter que l'environnement .venv est 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 :

import sys

print(sys.executable)

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 :

prenom = "James"
message = f"Bonjour {prenom}, bienvenue dans Python !"

print(message)

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 :

Bonjour James, bienvenue dans Python !

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 :

age: int = 54
age = "Bonjour"

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.