Exercices de Code

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

Tous niveaux Debutant Intermediaire Avance
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)

Suivre un parcours

Python Fondamental 3 sections
Developpeur Python 6 sections
Algorithmes & Entretiens 3 sections
Web & Django 4 sections
IA & Machine Learning 4 sections
IA Generative & RAG 5 sections
Automatisation & Scripts 5 sections
Neurosciences & IA 5 sections
Vision par Ordinateur 4 sections
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 →