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
Voir tous les exercices
Intermédiaire 🧠 Fondamentaux Les Bases Python

Arguments nommes

Quand une fonction a plusieurs paramètres avec des valeurs par défaut, tu peux utiliser des arguments nommés pour choisir lesquels tu veux modifier sans te …

20 XP 0 réussites
Résoudre →
fonction arguments-nommes intermediaire
Intermédiaire 🧠 Fondamentaux Les Bases Python

Nombre variable d'arguments

Parfois, tu ne sais pas a l'avance combien d'arguments ta fonction va recevoir. Python permet de gérer ca avec la syntaxe *args. Le paramètre précédé …

20 XP 0 réussites
Résoudre →
fonction args intermediaire
Intermédiaire 🧠 Fondamentaux Les Bases Python

Arguments nommes variables

En plus de *args, Python offre **kwargs qui capture les arguments nommés sous forme de dictionnaire. C'est tres pratique quand tu veux accepter des options …

20 XP 0 réussites
Résoudre →
fonction kwargs intermediaire
Intermédiaire 🧠 Fondamentaux Les Bases Python

Fonction lambda

Une lambda, c'est une mini-fonction anonyme (sans nom) qu'on écrit sur une seule ligne. C'est pratique quand tu as besoin d'une fonction tres courte, souvent …

20 XP 0 réussites
Résoudre →
lambda sorted intermediaire
Intermédiaire 🧠 Fondamentaux Les Bases Python

Variables locales et globales

En Python, une variable créée dans une fonction n'existe que dans cette fonction. On dit qu'elle est locale. En dehors de la fonction, elle n'existe …

20 XP 0 réussites
Résoudre →
scope closure intermediaire
Intermédiaire 🧠 Fondamentaux Fonctions & Modules

Fabrique de fonctions

Une fonction peut renvoyer une autre fonction. On appelle parfois ca une fabrique de fonctions (function factory). C'est comme un atelier qui produit des outils …

20 XP 0 réussites
Résoudre →
fabrique lambda higher-order
Intermédiaire 🧠 Fondamentaux Fonctions & Modules

Première closure

Une closure (fermeture en francais), c'est une fonction qui se souvient de l'environnement dans lequel elle a ete créée, meme apres que cet environnement a …

20 XP 0 réussites
Résoudre →
closure nonlocal intermediaire
Intermédiaire 🧠 Fondamentaux Fonctions & Modules

Closure avec historique

Les closures peuvent capturer n'importe quel type de donnee, pas seulement des nombres. On peut s'en servir pour créer des fonctions avec de la mémoire. …

20 XP 0 réussites
Résoudre →
closure mémoire accumulateur
Intermédiaire 🧠 Fondamentaux POO

La méthode __repr__

Python a deux méthodes pour convertir un objet en chaine : __str__ et __repr__. La difference : - __str__ est pour l'affichage humain (utilisee par …

20 XP 0 réussites
Résoudre →
repr str méthode-speciale
Intermédiaire 🧠 Fondamentaux POO

Attribut de classe

Jusqu'ici, on a vu des attributs d'instance (propres a chaque objet, definis avec self.attribut). Mais il existe aussi des attributs de classe : ils sont …

20 XP 0 réussites
Résoudre →
attribut-classe partage tva
Intermédiaire 🧠 Fondamentaux POO

Méthode statique

Une méthode statique est une fonction definie dans une classe mais qui n'a acces ni a l'instance (self) ni a la classe (cls). C'est juste …

20 XP 0 réussites
Résoudre →
staticmethod utilitaire conversion
Intermédiaire 🧠 Fondamentaux POO

Méthode de classe

Une méthode de classe est liee a la classe elle-meme, pas a une instance particuliere. Elle recoit cls (la classe) comme premier paramètre au lieu …

20 XP 0 réussites
Résoudre →
classmethod constructeur-alternatif
Intermédiaire 🧠 Fondamentaux POO GRATUIT

Héritage simple

L'héritage permet a une classe de récupérer les attributs et méthodes d'une autre classe. On dit que la classe enfant herite de la classe parent. …

20 XP 0 réussites
Résoudre →
héritage super surcharge
Intermédiaire 🧠 Fondamentaux POO

super() et initialisation

Quand une classe enfant a son propre __init__, elle doit appeler le __init__ du parent avec super().__init__(...). Sinon, les attributs du parent ne seront pas …

20 XP 0 réussites
Résoudre →
super héritage hierarchie
Intermédiaire 🧠 Fondamentaux POO

Surcharge de méthode

Quand une classe enfant definit une méthode qui existe deja dans la classe parente, on dit qu'elle la surcharge (override). L'enfant remplace le comportement du …

20 XP 0 réussites
Résoudre →
surcharge polymorphisme héritage
Intermédiaire 🧠 Fondamentaux POO

Property avec validation (setter)

Une property peut aussi avoir un setter, c'est-a-dire une méthode qui controle ce qui se passe quand on assigne une valeur. Ca permet de valider …

20 XP 0 réussites
Résoudre →
poo property setter
Intermédiaire 🧠 Fondamentaux POO

Properties calculées : Rectangle

Les properties sont parfaites pour exposer des valeurs calculées a partir d'autres attributs. L'avantage, c'est que la valeur est toujours a jour : si tu …

20 XP 0 réussites
Résoudre →
poo property calcul
Intermédiaire 🧠 Fondamentaux POO

ABC avec méthodes concretes et abstraites

Une classe abstraite peut aussi avoir des méthodes concretes (non abstraites). Ces méthodes sont heritees par les sous-classes sans avoir besoin de les reimplémenter. Seules …

20 XP 0 réussites
Résoudre →
poo abc polymorphisme
Intermédiaire 🧠 Fondamentaux Algorithmes

Somme récursive

Maintenant que tu as compris le principe de la récursion avec la factorielle, appliquons-le a un autre problème : calculer la somme des entiers de …

20 XP 0 réussites
Résoudre →
recursion somme intermediaire
Intermédiaire 🧠 Fondamentaux Algorithmes

Fibonacci recursif

La suite de Fibonacci est une suite de nombres ou chaque nombre est la somme des deux précédents : 0, 1, 1, 2, 3, 5, …

20 XP 0 réussites
Résoudre →
recursion fibonacci intermediaire
Intermédiaire 🧠 Fondamentaux Concepts Web & Django

Parser une URL

Quand tu tapes une adresse dans ton navigateur, tu envoies une URL au serveur. Cette URL contient plusieurs informations empaquetees ensemble : le protocole (http …

20 XP 0 réussites
Résoudre →
url parsing http
Intermédiaire 🧠 Fondamentaux Concepts Web & Django

Requête et réponse HTTP

Un serveur web, c'est un programme qui recoit des requêtes et renvoie des réponses. Chaque requête contient une méthode (GET pour lire, POST pour créer, …

20 XP 0 réussites
Résoudre →
http requête réponse
Intermédiaire 🧠 Fondamentaux Concepts Web & Django

Substitution de variables

Dans un framework web, un template est un texte avec des trous. Tu ecris du HTML avec des marqueurs comme {{ nom }}, et le …

20 XP 0 réussites
Résoudre →
template regex web
Intermédiaire 🧠 Fondamentaux Concepts Web & Django

Template avec boucle

En HTML, une liste a puces s'ecrit avec les balises ul (unordered list) et li (list item). Quand tu as une liste Python d'éléments, tu …

20 XP 0 réussites
Résoudre →
template html boucle
Page 1 / 3 Suivant →