DES RESSOURCES ET DES OUTILS AU SERVICE DES ACTEURS ET DES PROFESSIONNELS.

Python – Développer une librairie

Date de mise à jour : 30/04/2026 | Identifiant OffreInfo : 15_26527777F

Information fournie par :
Carif-Oref Occitanie

Objectifs, programme, validation de la formation

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 certificiante

Sortie

Sans niveau spécifique

Métiers visés

Code Rome

Durée, rythme, financement

Modalités pédagogiques
Durée
28 heures en centre

Conventionnement : Non

Financeur(s)

Autre

Conditions d'accès

Public(s)
Demandeur d'emploi, Public en emploi, Tout public
Modalités de recrutement et d'admission

Niveau d'entrée : Sans niveau spécifique

Conditions spécifiques et prérequis

Pour suivre ce stage dans de bonnes conditions, il est recommandé d'avoir suivi en amont la formation Python – Bases et introduction aux librairies scientifiques ou d'avoir atteint par la pratique un niveau équivalent

Modalités d'accès

Lieu de réalisation de l'action

formation entièrement présentielle
Adresse
41 rue de la Découverte
CS 37623
31676 - Labège
Responsable : Data Value
Téléphone fixe :
Contacter l'organisme

Contacts

Contact sur la formation
41 rue de la Découverte
CS 37621
31676 - Labège
Responsable : Monsieur Cédric CALAS
Téléphone fixe : 0972567567
fax :
Site web :
Contacter l'organisme
Contacter l'organisme formateur
Data Value
SIRET: 81837224500014
31676 Labège
Responsable : CALAS
Téléphone fixe : 0972567567
Site web :
Contacter l'organisme

Période prévisibles de déroulement des sessions

du 14/09/2026 au 17/09/2026
débutant le : 14/09/2026
Adresse d'inscription
41 rue de la Découverte
CS 37623
31676 - Labège
Etat du recrutement : Ouvert
Modalités : Entrées / Sorties à dates fixes

Organisme responsable

Data Value
SIRET : 81837224500014

Adresse
41 rue de la Découverte
CS 37621
31676 - Labège
Téléphone fixe : 0972567567
Contacter l'organisme