Ereditarietà multilivello

Principi di Ingegneria del Software in Python

Adam Spannbauer

Machine Learning Engineer at Eastman

Creare una classe Tweet

  File Classe Tweet

Principi di Ingegneria del Software in Python

Ereditarietà multilivello

Albero genealogico dell'ereditarietà

Principi di Ingegneria del Software in Python

Ereditarietà multilivello

Albero genealogico dell'ereditarietà multilivello

Principi di Ingegneria del Software in Python

Ereditarietà multipla

Albero genealogico dell'ereditarietà multipla

Principi di Ingegneria del Software in Python

Ereditarietà multilivello e super

class Parent:
    def __init__(self):
        print("Sono un genitore!")


class Child(Parent):
    def __init__(self):
        Parent.__init__()
        print("Sono un figlio!")

class SuperChild(Child): def __init__(self): super().__init__() print("Sono un super figlio!")

Scopri di più sull'ereditarietà multipla e super().

Principi di Ingegneria del Software in Python

Ereditarietà multilivello e super

class Parent:
    def __init__(self):
        print("Sono un genitore!")

class SuperChild(Parent):
    def __init__(self):
        super().__init__()
        print("Sono un super figlio!")

class Grandchild(SuperChild): def __init__(self): super().__init__() print("Sono un nipote!")
grandchild = Grandchild()
Sono un genitore!
Sono un super figlio!
Sono un nipote!
Principi di Ingegneria del Software in Python

Tracciare gli attributi ereditati

# Crea un'istanza di SocialMedia
sm = SocialMedia('@DataCamp #DataScience #Python #sklearn')

# Quali metodi ha sm? ¯\_(ツ)_/¯ 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']
Principi di Ingegneria del Software in Python

Facciamo pratica

Principi di Ingegneria del Software in Python

Preparing Video For Download...