Héritage multiniveau

Principes d’ingénierie logicielle en Python

Adam Spannbauer

Machine Learning Engineer at Eastman

Créer une classe Tweet

  Fichier de la classe Tweet

Principes d’ingénierie logicielle en Python

Héritage multiniveau

Arbre généalogique de l'héritage

Principes d’ingénierie logicielle en Python

Héritage multiniveau

Arbre généalogique de l'héritage multiniveau

Principes d’ingénierie logicielle en Python

Héritage multiple

Arbre généalogique de l'héritage multiple

Principes d’ingénierie logicielle en Python

Héritage multiniveau et super

class Parent:
    def __init__(self):
        print("Je suis un parent !")


class Child(Parent):
    def __init__(self):
        Parent.__init__()
        print("Je suis un enfant !")

class SuperChild(Child): def __init__(self): super().__init__() print("Je suis un super enfant !")

En savoir plus sur l'héritage multiple et super().

Principes d’ingénierie logicielle en Python

Héritage multiniveau et super

class Parent:
    def __init__(self):
        print("Je suis un parent !")

class SuperChild(Parent):
    def __init__(self):
        super().__init__()
        print("Je suis un super enfant !")

class Grandchild(SuperChild): def __init__(self): super().__init__() print("Je suis un petit-enfant !")
grandchild = Grandchild()
Je suis un parent !
Je suis un super enfant !
Je suis un petit-enfant !
Principes d’ingénierie logicielle en Python

Suivi des attributs hérités

# Créer une instance de SocialMedia
sm = SocialMedia('@DataCamp #DataScience #Python #sklearn')

# Quelles méthodes sm possède-t-il ? ¯\_(ツ)_/¯ dir(sm)
['__class__', '__delattr__', '__dict__', '__dir__', '__doc__', '__eq__', 
'__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__init__', 
'__init_subclass__', '__le__', '__lt__', '__module__', '__ne__', '__new__', 
'__reduce__', '__reduce_ex__', '__repr__', '__setattr__', '__sizeof__', 
'__str__', '__subclasshook__', '__weakref__', '_count_hashtags', 
'_count_mentions', '_count_words', '_tokenize', 'hashtag_counts', 
'mention_counts', 'text', 'tokens', 'word_counts']
Principes d’ingénierie logicielle en Python

Passons à la pratique !

Principes d’ingénierie logicielle en Python

Preparing Video For Download...