Moștenire pe mai multe niveluri

Principii de inginerie software în Python

Adam Spannbauer

Machine Learning Engineer at Eastman

Crearea clasei Tweet

  Fișierul clasei Tweet

Principii de inginerie software în Python

Moștenire pe mai multe niveluri

Arborele de moștenire

Principii de inginerie software în Python

Moștenire pe mai multe niveluri

Arbore de moștenire pe mai multe niveluri

Principii de inginerie software în Python

Moștenire multiplă

Arbore de moștenire multiplă

Principii de inginerie software în Python

Moștenire pe mai multe niveluri și super

class Parent:
    def __init__(self):
        print("I'm a parent!")


class Child(Parent):
    def __init__(self):
        Parent.__init__()
        print("I'm a child!")

class SuperChild(Child): def __init__(self): super().__init__() print("I'm a super child!")

Aflați mai multe despre moștenirea multiplă și super().

Principii de inginerie software în Python

Moștenire pe mai multe niveluri și super

class Parent:
    def __init__(self):
        print("I'm a parent!")

class SuperChild(Parent):
    def __init__(self):
        super().__init__()
        print("I'm a super child!")

class Grandchild(SuperChild): def __init__(self): super().__init__() print("I'm a grandchild!")
grandchild = Grandchild()
I'm a parent!
I'm a super child!
I'm a grandchild!
Principii de inginerie software în Python

Urmărirea atributelor moștenite

# Create an instance of SocialMedia
sm = SocialMedia('@DataCamp #DataScience #Python #sklearn')

# What methods does sm have? ¯\_(ツ)_/¯ 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']
Principii de inginerie software în Python

Să exersăm!

Principii de inginerie software în Python

Preparing Video For Download...