15_26527777F_1022432S https://www.meformerenregion.fr/formations/527777 Python – Développer une librairie Data Value

Python – Développer une librairie

Date de mise à jour : 30/04/2026 | Identifiant OffreInfo : 15_26527777F
Organisme responsable : Data Value

Objectifs

Maîtriser le développement de librairies Python : conception, structuration, tests automatisés, documentation et déploiement.

Appliquer les bonnes pratiques du développement collaboratif en Python pour produire des packages fiables, maintenables et réutilisables.


Compétences visées

- Sélectionner l'outil adapté pour gérer les environnements virtuels

- Créer une librairie

- Comprendre et utiliser efficacement les syntaxes de la commande import

- Écrire des tests unitaires et d'intégration avec pytest

- Documenter sa librairie et générer une documentation professionnelle

- Packager sa librairie et la déployer

- Travailler en équipe avec un outil de versionnement

- Configurer un workflow de qualité avec des pré-commits

- Automatiser les tests et le déploiement avec GitLab CI/CD (ou autre)

Programme de la formation

- Choisir son environnement virtuel : Panaroma des différents outils: virtualenv, poetry, pipenv, conda, uv, pixi, ... / Le fichier pyproject.toml et les peps qui le définissent / Créer un environnement virtuel reproductible
TP : Création d'un environnement virtuel avec l'outil retenu par les participants (uv ou pixi sont les plus pertinents aujourd'hui) Création d'un fichier pyproject.toml minimal


- Créer une librairie : Un peu de terminologie : modules, packages, librairies et framework / Créer et importer une librairie / Le fichier __init__.py et les variables spéciales / L'arborescence standard / Comprendre et utiliser efficacement les imports relatifs / Maîtriser la recherche au travers des chemins d'imports / Créer un binding Python pour une librairie C
TP : Créer le squelette de sa librairie. Utiliser un fichier pyproject.toml pour y ajouter des dépendances et métadonnées. Créer un binding en C ou Cython selon les besoins des participants


- Documenter sa librairie : Les docstrings et PEPS / Les formats de documentation Google, NumPy, ou reStructuredText / Utiliser Sphinx et Jupyter Book / Publier avec ReadTheDocs
TP : Générer la documentation avec Sphinx et Jupyter Book


- Tester sa librairie : Le Test Driven Development / Les bases avec assert, doctest et unittest / Pytest: les bases, marqueurs et paramètres, fixtures, plugins, ... / Les autres outils de tests: mocking, hypothesis, ... / Logger : concepts et bonnes pratiques
TP : Ecrire des tests unitaires, bien traiter les bugs, mise en place de logs


- Packager sa librairie : Choisir son outil de packaging: setuptools, flit, Hatchling, pdm, ... / Les formats eggs et wheel / Pyproject.toml : les bases, dépendances, fichiers non python
TP : Créer un package et l'installer dans un environnement virtuel. Le déposer sur Pypi


- Intégration continue et qualité logicielle : Conventions de codage : PEP8, PEP257 /  Outils qualité: linter, formatter, contrôles de type, ... / Rappels sur Git : branches, commits, merges, rebases / Versionner avec git/GitHub/GitLab / GitLab (ou GitHub) : gestion de dépôt, issues, merge requests / Bonnes pratiques : convention Conventional Commits, branches courtes et thématiques / Pré-commit et formattage automatique avec Ruff / Intégration continue : les concepts et mise en pratique / Revue de code
TP: Automatisation d'un pipeline CI/CD permettant : - D'exécuter les tests et mesurer la couverture - Builder le package - Générer et déployer la documentation
Sous réserve de contraintes techniques ou de confidentialité, nous vous proposons de personnaliser la formation en réalisant des exercices directement sur vos données ou projets métiers

Validation et sanction

Attestation de formation

Type de formation

Non certifiante

Sortie

Sans niveau spécifique

Contact de la formation

41 rue de la Découverte
CS 37621
31676 - Labège
Responsable : Monsieur Cédric CALAS
Téléphone fixe : 0972567567
Contacter l'organisme

Contact de l'organisme formateur

Data Value
SIRET : 81837224500014
31676 Labège
Responsable : Monsieur Cédric CALAS
Téléphone fixe : 0972567567
Contacter l'organisme

Information fournie par :