Félicitations

Introduction à la programmation orientée objet en Python

George Boorman

Curriculum Manager, DataCamp

Classes et objets

Terme Définition
Classe Modèle/plan pour créer des objets
Objet Combinaison de données et de fonctionnalités ; instance d’une classe
Introduction à la programmation orientée objet en Python

Attributs et méthodes

Terme Définition
Classe Modèle/plan pour créer des objets
Objet Combinaison de données et de fonctionnalités ; instance d’une classe
État Données d’un objet, définies via des attributs
Comportement Fonctionnalités d’un objet, définies via des méthodes
Introduction à la programmation orientée objet en Python

Concepts clés

Encapsulation :

  • Regrouper données et méthodes

Héritage :

  • Étendre des fonctionnalités existantes

Polymorphisme :

  • Fournir une interface unifiée
Introduction à la programmation orientée objet en Python

Comparaisons

Opérateur Méthode
== __eq__()
!= __ne__()
>= __ge__()
<= __le__()
> __gt__()
< __lt__()
Introduction à la programmation orientée objet en Python

Représentation texte

__str__()

  • print(obj), str(obj)
print([1,2,3])
[1 2 3]
str([1,2,3])
'[1, 2, 3]' 
  • informel, pour l’utilisateur final
  • représentation en _str_ing

__repr__()

  • repr(obj), affichage en console
repr([1,2,3])
[1,2,3]
[1,2,3]
[1,2,3]
  • formel, pour le développeur
  • représentation _repr_oductible/représentative
  • solution de repli pour print()
Introduction à la programmation orientée objet en Python

Gestion des erreurs

class BalanceError(Exception): 
    pass

class Customer: def __init__(self, name, balance): if balance < 0 : raise BalanceError("Balance has to be non-negative!") else: self.name, self.balance = name, balance
# Use try-except to catch errors try: cust = Customer("Larry Torres", -100) except BalanceError: cust = Customer("Larry Torres", 0)
Introduction à la programmation orientée objet en Python

Et ensuite ?

  • Héritage multiple
  • Descripteurs
  • Attributs personnalisés
  • Itérateurs personnalisés
  • Annotations de type
  • Classes abstraites de base
Introduction à la programmation orientée objet en Python

Passons à la pratique !

Introduction à la programmation orientée objet en Python

Preparing Video For Download...