Exercices de Code

Pratique Python, IA Engineering et bien plus avec des exercices interactifs et des tests automatiques.

🎓 Parcours guidé Les sections dans l'ordre, étape par étape. 🔍 Explorer librement Par thème, niveau ou recherche.
Tous niveaux Débutant Intermédiaire Avancé
Tous les sujets Les Bases Python (71) Structures de données (40) Fonctions & Modules (106) POO (53) Architecture & Patterns (57) Algorithmes (47) Concepts Web & Django (50) IA & Data Science (22) Prompt Engineering (15) Projets guidés (81) Django Avancé (18) AI Engineering (19) Machine Learning (30) Entraîner son LLM (15) Computer Vision (18)
Débutant 🧠 Fondamentaux Projets guidés GRATUIT

Contact 1 : Créer un contact

On va construire un vrai mini-projet ensemble : un gestionnaire de contacts, étape par étape. C'est le genre de programme utile que tu pourrais réellement …

10 XP 0 réussites
Résoudre →
dict contact projet
Débutant 🧠 Fondamentaux Projets guidés GRATUIT

Contact 2 : Ajouter a la liste

Dans tout système qui stocke des données, tu dois empêcher les doublons. Ici, l'email sert d'identifiant unique : deux contacts ne peuvent pas avoir le …

10 XP 0 réussites
Résoudre →
liste append unicite
Débutant 🧠 Fondamentaux Projets guidés GRATUIT

Contact 3 : Rechercher un contact

La recherche par identifiant unique est l'opération la plus fréquente dans toute application : trouver un utilisateur par email, un produit par référence, un article …

10 XP 0 réussites
Résoudre →
recherche email None
Intermédiaire 🧠 Fondamentaux Projets guidés

Contact 4 : Mettre a jour un contact

La mise à jour partielle est un pattern qu'on retrouve dans les API REST (méthode PATCH) : on modifie seulement les champs fournis, sans toucher …

20 XP 0 réussites
Résoudre →
update kwargs contact
Intermédiaire 🧠 Fondamentaux Projets guidés

Contact 5 : Supprimer un contact

La suppression dans une liste est un piège classique en Python : si tu supprimes un élément pendant que tu itères avec un for, les …

20 XP 0 réussites
Résoudre →
supprimer pop enumerate
Intermédiaire 🧠 Fondamentaux Projets guidés

Contact 6 : Recherche floue

La recherche exacte ne suffit pas dans un vrai produit. Les utilisateurs veulent taper un bout de nom et trouver tous les résultats correspondants. C'est …

20 XP 0 réussites
Résoudre →
recherche insensible casse lower
Intermédiaire 🧠 Fondamentaux Projets guidés

Contact 7 : Filtrer par ville

Filtrer des données selon un critère, c'est le pain quotidien du développeur : les commandes d'une ville, les utilisateurs d'un pays, les tickets d'un statut. …

20 XP 0 réussites
Résoudre →
filter ville lower
Intermédiaire 🧠 Fondamentaux Projets guidés

Contact 8 : Trier les contacts

Pouvoir trier des données selon différents critères et dans différents ordres, c'est le ORDER BY du SQL en Python pur. C'est aussi ce que font …

20 XP 0 réussites
Résoudre →
sorted lambda reverse
Intermédiaire 🧠 Fondamentaux Projets guidés

Contact 9 : Exporter en JSON

Sauvegarder des données en JSON pour pouvoir les recharger plus tard, c'est le mécanisme de persistance le plus simple qui existe. Pas besoin de base …

20 XP 0 réussites
Résoudre →
json dumps export
Avancé 🧠 Fondamentaux Projets guidés

Contact 10 : Statistiques du carnet

Pour finir notre gestionnaire, on construit un tableau de bord statistique. C'est exactement ce que fait un admin Django ou un dashboard analytics : agréger …

30 XP 0 réussites
Résoudre →
statistiques Counter max
Intermédiaire 🧠 Fondamentaux Projets guidés

E-commerce #1 : Classe Produit

On commence le projet e-commerce ! Tout part du produit. Un produit a un nom, un prix et un stock. Pour les prix, on utilise …

20 XP 0 réussites
Résoudre →
ecommerce Decimal produit
Intermédiaire 🧠 Fondamentaux Projets guidés

E-commerce #2 : Classe Panier

Le panier stocke les produits et leurs quantites. En interne, c'est un dictionnaire ou les clés sont des produits et les valeurs sont des quantites. …

20 XP 0 réussites
Résoudre →
ecommerce panier dict
Intermédiaire 🧠 Fondamentaux Projets guidés

E-commerce #3 : Inventaire

L'inventaire gere la liste de tous les produits disponibles. C'est le catalogue du magasin. Il faut pouvoir chercher un produit par son nom, filtrer ceux …

20 XP 0 réussites
Résoudre →
ecommerce inventaire stock
Intermédiaire 🧠 Fondamentaux Projets guidés

E-commerce #4 : Stratégies de reduction

Le patron Strategy permet d'echanger des algorithmes sans changer le code qui les utilise. C'est comme avoir plusieurs telecommandes pour la meme tele : chacune …

20 XP 0 réussites
Résoudre →
ecommerce strategy ABC
Intermédiaire 🧠 Fondamentaux Projets guidés

E-commerce #5 : Classe Commande

Une commande représente un achat en cours de traitement. Elle a un client, des items (produit: quantite), et un statut qui evolue. Le cycle de …

20 XP 0 réussites
Résoudre →
ecommerce commande statut
Intermédiaire 🧠 Fondamentaux Projets guidés

E-commerce #6 : Simulation de paiement

En vrai, le paiement passe par une API externe (Stripe, PayPal...). Ici on simule les regles metier de differents moyens de paiement. Chaque moyen de …

20 XP 0 réussites
Résoudre →
ecommerce paiement simulation
Avancé 🧠 Fondamentaux Projets guidés

E-commerce #7 : Pipeline de traitement

Un pipeline, c'est une chaine de traitement ou chaque étape fait son travail et passe le relais a la suivante. Si une étape echoue, on …

30 XP 0 réussites
Résoudre →
ecommerce pipeline pattern
Avancé 🧠 Fondamentaux Projets guidés

E-commerce #8 : Panier avec context manager

On peut transformer le Panier en context manager pour gerer une session d'achat. L'idee : quand on entre dans le bloc with, le panier est …

30 XP 0 réussites
Résoudre →
ecommerce context-manager __enter__
Intermédiaire 🧠 Fondamentaux Projets guidés

E-commerce #9 : Produit serialisable

On etend la classe Produit avec la serialisation JSON. Le problème avec Decimal, c'est que json.dumps() ne sait pas le serialiser. La solution : convertir …

20 XP 0 réussites
Résoudre →
ecommerce json Decimal
Avancé 🧠 Fondamentaux Projets guidés

E-commerce #10 : Catalogue avec __iter__

Un catalogue iterable permet d'utiliser la syntaxe for produit in catalogue directement. Pour ca, il faut implémenter les méthodes speciales __iter__, __len__ et __contains__. __iter__ …

30 XP 0 réussites
Résoudre →
ecommerce __iter__ __contains__
Avancé 🧠 Fondamentaux Projets guidés

E-commerce #11 : Historique des commandes

L'historique des commandes permet d'analyser les ventes. Il faut pouvoir calculer le chiffre d'affaires total, filtrer par statut, et trouver le produit le plus vendu. …

30 XP 0 réussites
Résoudre →
ecommerce historique agregation
Avancé 🧠 Fondamentaux Projets guidés

E-commerce #12 : Système de coupons

Un coupon de reduction a un code, un type (pourcentage ou fixe), une valeur, et un nombre maximum d'utilisations. Une fois le max atteint, le …

30 XP 0 réussites
Résoudre →
ecommerce coupon reduction
Avancé 🧠 Fondamentaux Projets guidés

E-commerce #13 : Assemblage final

C'est le moment d'assembler toutes les pieces ! On crée une fonction qui orchestre tout le processus de commande. La fonction recoit un client, un …

30 XP 0 réussites
Résoudre →
ecommerce assemblage Decimal
Intermédiaire 🧠 Fondamentaux Projets guidés

Tokenisation de documents

On commence un projet fil rouge : construire un moteur de recherche de A a Z. A la fin de cette série d'exercices, tu auras …

20 XP 0 réussites
Résoudre →
tokenisation regex nlp
Page 1 / 4 Suivant →