Classes et méthode __init__
Définissez des classes, créez des objets et initialisez leurs attributs.
Classes et méthode __init__ est une leçon Python Academy gratuite sur CoddyKit. Ceci est la leçon 1 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Python Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Python Academy comprend 4 leçons au total.
Définir une classe
Utilisez le mot-clé class pour définir une classe. Par convention, les noms de classe utilisent CapWords.
class Dog:
pass
fido = Dog()
print(type(fido)) # <class '__main__.Dog'>La méthode __init__
__init__ est appelée automatiquement lorsqu’un objet est créé. Utilisez-la pour configurer les attributs d’instance.
class Dog:
def __init__(self, name, breed):
self.name = name
self.breed = breed
fido = Dog("Fido", "Labrador")
print(fido.name) # FidoExplication de self
self désigne l’instance actuelle. Il doit être le premier paramètre de chaque méthode d’instance. Python le transmet automatiquement.
class Counter:
def __init__(self):
self.count = 0
def increment(self):
self.count += 1
c = Counter()
c.increment()
print(c.count) # 1Plusieurs instances
Chaque instance possède sa propre copie des attributs d’instance définis dans __init__.
class Point:
def __init__(self, x, y):
self.x = x
self.y = y
p1 = Point(1, 2)
p2 = Point(5, 7)
print(p1.x, p2.x) # 1 5Valeurs de paramètre par défaut dans __init__
Attribuez des valeurs par défaut aux paramètres de __init__ afin de rendre certains arguments facultatifs.
class Circle:
def __init__(self, radius=1.0):
self.radius = radius
c1 = Circle()
c2 = Circle(5)
print(c1.radius, c2.radius) # 1.0 5Méthodes d’instance
Les méthodes définies à l’intérieur d’une classe agissent sur l’instance par l’intermédiaire de self.
class Rectangle:
def __init__(self, w, h):
self.w = w
self.h = h
def area(self):
return self.w * self.h
r = Rectangle(4, 5)
print(r.area()) # 20Ajouter des attributs après la création
Vous pouvez ajouter des attributs à une instance après sa création, mais il est plus propre de tous les déclarer dans __init__.
class Person:
def __init__(self, name):
self.name = name
p = Person("Alice")
p.age = 30 # added after creation
print(p.name, p.age)Valeur de retour de __init__
__init__ doit renvoyer None. Renvoyer une autre valeur déclenche une TypeError.
class Broken:
def __init__(self):
return 42 # TypeError!
# Correct
class OK:
def __init__(self):
self.value = 42
# implicit return NoneVérifier le type d’une instance
Utilisez isinstance() pour vérifier qu’un objet est une instance d’une classe.
class Animal:
pass
class Dog(Animal):
pass
d = Dog()
print(isinstance(d, Dog)) # True
print(isinstance(d, Animal)) # TrueAttribut __dict__
Chaque instance stocke ses attributs dans un dictionnaire __dict__.
class Book:
def __init__(self, title, pages):
self.title = title
self.pages = pages
b = Book("Python 101", 300)
print(b.__dict__) # {'title': 'Python 101', 'pages': 300}Supprimer des attributs
Utilisez del pour supprimer un attribut d’une instance pendant l’exécution.
class Config:
def __init__(self):
self.debug = True
self.version = "1.0"
cfg = Config()
del cfg.debug
print(hasattr(cfg, "debug")) # FalseVérification rapide
Quel est le rôle de self dans les méthodes de classe Python ?
Récapitulatif
Les classes sont des modèles pour les objets. __init__ initialise les attributs d’instance, self désigne l’objet actuel et chaque instance conserve son propre dictionnaire d’attributs.
Questions Fréquemment Posées
La leçon « Classes et méthode __init__ » est-elle gratuite ?
Oui — le texte complet de « Classes et méthode __init__ » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Python Academy, passe à CoddyKit PRO. Le cours Python Academy comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Classes et méthode __init__ » ?
Définissez des classes, créez des objets et initialisez leurs attributs. Tu pratiques Python Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Python Academy ?
Aucune expérience préalable n'est requise. Python Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 4.
Combien de temps prend la leçon « Classes et méthode __init__ » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Python Academy ?
Oui. Chaque leçon Python Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Classes et méthode __init__
- Attributs d’instance et de classe
- Méthodes d’instance et self
- Méthodes magiques : __str__ et __repr__