Python - Développement : fondamentaux et bonnes pratiques

Formation créée le 03/04/2026.
Version du programme : 2

Type de formation

Distanciel

Durée de formation

21 heures (3 jours)

Python - Développement : fondamentaux et bonnes pratiques


Objectif de formation : Permettre aux participants de maîtriser les fondamentaux du langage Python, de structurer un code professionnel orienté objet, et d'appliquer les bonnes pratiques modernes de développement — gestion de l'environnement, tests, manipulation de données et consommation d'API — afin d'être immédiatement opérationnels sur des projets Python en entreprise. Un projet fil rouge est développé progressivement tout au long de la formation — de la configuration de l'environnement jusqu'au déploiement d'un script complet et testé — permettant à chaque participant de repartir avec une base de code professionnelle réutilisable.

Objectifs de la formation

  • Configurer un environnement Python professionnel avec environnement virtuel
  • Maîtriser la syntaxe Python moderne et ses spécificités par rapport aux autres langages
  • Manipuler les structures de données fondamentales de Python
  • Écrire des fonctions, modules et packages réutilisables
  • Appliquer les principes de la programmation orientée objet en Python
  • Gérer les fichiers, les exceptions et les entrées/sorties
  • Consommer des API REST et manipuler des données JSON
  • Tester son code avec pytest et appliquer les bonnes pratiques de qualité
  • Utiliser l'écosystème Python moderne : pip, virtualenv, type hints, f-strings

Profil des bénéficiaires

Pour qui
  • Développeurs souhaitant ajouter Python à leur stack technologique
  • Ingénieurs et techniciens amenés à développer des scripts ou outils en Python
  • Chefs de projet techniques souhaitant comprendre et évaluer du code Python
  • Toute personne disposant d'une base en programmation souhaitant maîtriser Python
Prérequis
  • Expérience dans au moins un langage de programmation (Java, C#, JavaScript, PHP ou équivalent)
  • Notions de base en développement logiciel : fonctions, variables, structures de contrôle
  • Aucune connaissance préalable de Python requise

Contenu de la formation

Module 1 — Environnement et premiers pas en Python (2h)
  • Pourquoi Python en 2026 : positionnement, usages professionnels, écosystème
  • Installation de Python et choix de l'IDE : VS Code, PyCharm — configuration optimale
  • Environnements virtuels : venv, virtualenv — pourquoi c'est indispensable en entreprise
  • Gestion des dépendances avec pip : installation, requirements.txt, bonnes pratiques
  • Structure d'un projet Python professionnel : fichiers, dossiers, conventions PEP8
  • La console Python interactive et le mode script : différences et usages
  • Introduction aux outils de qualité : linters (flake8, ruff), formatters (black)
  • Travaux pratiques : création de l'environnement virtuel du projet fil rouge, installation des dépendances, configuration de VS Code avec les extensions essentielles, premier script Python respectant PEP8
Module 2 — Syntaxe Python et structures de données (3h)
  • Les spécificités de Python : indentation, typage dynamique, duck typing
  • Types primitifs : int, float, str, bool — opérateurs et conversions
  • Les f-strings : formatage moderne des chaînes de caractères
  • Structures de contrôle : if/elif/else, boucles for/while, break/continue, pass
  • Les structures de données fondamentales : Listes : création, indexation, slicing, méthodes, tri Tuples : immuabilité et cas d'usage Dictionnaires : accès, modification, itération, méthodes clés Sets : unicité, opérations ensemblistes
  • Comprehensions : list, dict et set comprehensions — écrire du Python idiomatique
  • Gestion des exceptions : try/except/else/finally, exceptions personnalisées
  • Travaux pratiques : manipulation intensive des structures de données — tri, filtrage, transformation de jeux de données réels avec comprehensions ; écriture d'un parseur de données simple avec gestion des erreurs
Module 3 — Fonctions, modules et packages (3h)
  • Définition de fonctions : def, arguments positionnels, arguments par défaut
  • *args et **kwargs : fonctions à nombre d'arguments variables
  • Fonctions lambda et fonctions d'ordre supérieur : map, filter, sorted avec key
  • Générateurs et expressions génératrices : yield, efficacité mémoire
  • Type hints : annoter ses fonctions pour un code plus lisible et maintenable
  • Travaux pratiques : utilisations de variable en python, création & utilisations de tableaux
  • Docstrings : documenter son code selon les conventions (Google style, NumPy style)
  • Modules : créer, importer, organiser son code en fichiers séparés
  • Packages : structurer un projet en packages avec __init__.py
  • Modules de la bibliothèque standard incontournables : os, sys, pathlib, datetime, json, re
  • Travaux pratiques : refactorisation du projet fil rouge en modules séparés — extraction des fonctions avec type hints et docstrings, création d'un package utilitaire réutilisable, utilisation de pathlib pour la gestion des fichiers
Module 4 — Programmation orientée objet en Python (3h)
  • Pourquoi la POO ? Comparaison avec d'autres langages
  • Classes et instances : création, attributs d'instance, attributs de classe
  • Constructeur __init__ et le paramètre self
  • Méthodes d'instance, méthodes de classe (classmethod) et méthodes statiques (staticmethod)
  • Encapsulation : conventions de nommage , properties
  • Héritage : simple et multiple, super(), résolution MRO
  • Méthodes magiques (dunder methods) : __str__, __repr__, __eq__, __len__
  • Dataclasses : simplifier la création de classes de données avec dataclass
  • Protocoles et duck typing : écrire du code flexible sans héritage strict
  • Travaux pratiques : conception et implémentation d'une hiérarchie de classes pour le projet fil rouge — création de classes métier avec dataclasses, héritage, méthodes magiques, properties ; mise en pratique du duck typing
Module 5 — Fichiers, données et API REST (4h)
  • Lecture et écriture de fichiers texte : open, modes, encodage UTF-8, context manager (with)
  • Manipulation de fichiers CSV : module csv, lecture/écriture, DictReader/DictWriter
  • Sérialisation JSON : json.dumps, json.loads, lecture/écriture de fichiers JSON
  • Manipulation de fichiers avec pathlib : lister, copier, déplacer, supprimer
  • Introduction aux API REST : principes HTTP, verbes GET/POST/PUT/DELETE
  • Consommer une API REST avec requests : installation, appels, gestion des réponses
  • Authentification API : headers, tokens Bearer, clés API
  • Traitement des données récupérées : désérialisation, filtrage, transformation
  • Travaux pratiques : intégration d'une API REST publique dans le projet fil rouge — appel, traitement du JSON, sauvegarde des données en fichier CSV et JSON, gestion des erreurs réseau et des codes HTTP
Module 6 — Tests et qualité du code (3h)
  • Pourquoi tester son code ? Les différents types de tests : unitaires, d'intégration
  • pytest : installation, écriture de tests, conventions de nommage, lancement
  • Assertions et messages d'erreur clairs
  • Fixtures pytest : partager des données de test entre plusieurs tests
  • Paramétrage des tests avec pytest.mark.parametrize
  • Mocking avec unittest.mock : simuler des dépendances externes (API, fichiers)
  • Couverture de code : pytest-cov, interpréter les résultats
  • Bonnes pratiques : TDD, tests lisibles, tests maintenables
  • Travaux pratiques : écriture d'une suite de tests complète pour le projet fil rouge — tests unitaires des fonctions métier, test d'une fonction qui appelle une API avec mock, rapport de couverture et identification des zones non couvertes
Module 7 — Bonnes pratiques et mise en production (3h)
  • Logging professionnel : module logging, niveaux, handlers, formatters
  • Variables d'environnement et configuration : python-dotenv, séparation config code
  • Gestion avancée des exceptions : hiérarchie, exceptions personnalisées métier
  • Packaging et distribution : pyproject.toml, build, publication sur PyPI (panorama)
  • Git et Python : .gitignore, versionner un projet Python proprement
  • Débogage avec pdb et les outils IDE : breakpoints, inspection de variables
  • Introduction à l'asynchronisme : asyncio, async/await — cas d'usage et limites
  • Présentation finale du projet fil rouge : démonstration, revue de code collective
  • Travaux pratiques : finalisation du projet fil rouge — ajout du logging, gestion de la configuration via .env, revue de code collective avec corrections, présentation et démonstration de l'application complète

Équipe pédagogique

Professionnel expert technique et pédagogique.

Suivi de l'exécution et évaluation des résultats

  • Feuilles de présence.
  • Questions orales ou écrites (QCM).
  • Mises en situation.
  • Formulaires d'évaluation de la formation.
  • Certificat de réalisation de l’action de formation.

Ressources techniques et pédagogiques

  • Espace intranet de formation.
  • Documents supports de formation projetés.
  • Exposés théoriques
  • Etude de cas concrets
  • Quiz en salle
  • Mise à disposition en ligne de documents supports à la suite de la formation.

Qualité et satisfaction

Taux de satisfaction des apprenants, nombre d'apprenants, taux et causes des abandons, taux de retour des enquêtes, taux d'interruption en cours de prestation...

Délai d'accès

2 semaines