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 POO GRATUIT

La méthode __str__

Quand tu fais print() sur un objet, Python cherche une méthode speciale appelee __str__ pour savoir comment l'afficher. Sans cette méthode, tu obtiens quelque chose …

10 XP 0 réussites
Résoudre →
str méthode-speciale formatage
Débutant 🧠 Fondamentaux POO GRATUIT

Une méthode d'instance

Une méthode, c'est une fonction qui appartient a une classe. Elle a toujours self comme premier paramètre, ce qui lui donne acces aux attributs de …

10 XP 0 réussites
Résoudre →
méthode self état
Débutant 🧠 Fondamentaux POO

Méthode avec paramètre

Une méthode peut prendre des paramètres en plus de self. Ces paramètres fonctionnent exactement comme pour une fonction normale. Par exemple : class Personne: def …

10 XP 0 réussites
Résoudre →
méthode paramètre encapsulation
Débutant 🧠 Fondamentaux POO

Méthode qui renvoie un booleen

Une méthode peut renvoyer n'importe quel type de valeur, y compris un booleen (True ou False). C'est tres utile pour tester une condition liee a …

10 XP 0 réussites
Résoudre →
méthode booleen rectangle
Débutant 🧠 Fondamentaux POO

Plusieurs instances independantes

Un point essentiel de la POO : chaque objet a ses propres données. Si tu créés deux instances d'une meme classe, modifier l'une ne change …

10 XP 0 réussites
Résoudre →
instances independance méthode
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

isinstance et hierarchie

La fonction isinstance(objet, classe) te permet de vérifier si un objet est une instance d'une classe ou d'une de ses sous-classes. C'est different de type() …

20 XP 0 réussites
Résoudre →
isinstance type comptage
Intermédiaire 🧠 Fondamentaux POO

Etendre une méthode du parent

Parfois, tu ne veux pas remplacer completement une méthode du parent, mais l'etendre : faire ce que fait le parent, puis ajouter quelque chose. Pour …

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

Compteur d'instances avec attribut de classe

Un cas d'usage classique des attributs de classe, c'est compter combien d'instances ont ete créées. L'idee est simple : un compteur au niveau de la …

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

Classe complete : Pile (Stack)

Une pile (stack en anglais), c'est comme une pile d'assiettes : tu ne peux ajouter ou retirer que l'élément du dessus. On appelle ca LIFO …

20 XP 0 réussites
Résoudre →
pile structure-données complet
Avancé 🧠 Fondamentaux POO

Classe complete : Carnet de contacts

On va construire un petit carnet de contacts, un cas realiste qui combine tout ce qu'on a vu : classes, attributs, méthodes, __str__, et interaction …

30 XP 0 réussites
Résoudre →
classe-complete collection cas-reel
Avancé 🧠 Fondamentaux POO

Système de notification (héritage)

En situation professionnelle, l'héritage sert souvent a definir un comportement commun dans une classe de base, puis a specialiser ce comportement dans des sous-classes. Voici …

30 XP 0 réussites
Résoudre →
héritage polymorphisme cas-reel
Débutant 🧠 Fondamentaux POO GRATUIT

Comparer deux objets avec __eq__

Quand tu compares deux objets avec ==, Python appelle en coulisses une méthode speciale : __eq__. Par défaut, == vérifie si les deux variables pointent …

10 XP 0 réussites
Résoudre →
poo __eq__ dunder
Débutant 🧠 Fondamentaux POO GRATUIT

Trier des objets avec __lt__

Pour pouvoir trier des objets avec sorted(), Python a besoin de savoir comment les comparer. Il utilise la méthode speciale __lt__ (lt pour less than, …

10 XP 0 réussites
Résoudre →
poo __lt__ sorted
Débutant 🧠 Fondamentaux POO GRATUIT

Additionner des objets avec __add__

L'operateur + entre deux objets appelle la méthode __add__. C'est ce qu'on appelle la surcharge d'operateur : tu redefinies ce que + fait pour ta …

10 XP 0 réussites
Résoudre →
poo __add__ __str__
Intermédiaire 🧠 Fondamentaux POO

Classe Distance complete

Maintenant que tu connais __add__ et __sub__, on va créer une classe plus complete. En plus d'additionner et soustraire des distances entre elles, on veut …

20 XP 0 réussites
Résoudre →
poo surcharge operateurs
Intermédiaire 🧠 Fondamentaux POO

Comparaison complete avec __eq__ et __lt__

En definissant seulement __eq__ et __lt__, Python peut deduire les autres comparaisons si tu utilises le decorateur @functools.total_ordering. Mais pour cet exercice, on va les …

20 XP 0 réussites
Résoudre →
poo comparaison dunder
Débutant 🧠 Fondamentaux POO GRATUIT

Decouvrir @property

En Python, par convention, un attribut qui commence par un underscore (comme _age) est considere comme prive. Ca veut dire qu'on ne devrait pas y …

10 XP 0 réussites
Résoudre →
poo property encapsulation
← Précédent Page 2 / 3 Suivant →