Víceúrovňová dědičnost

Principy softwarového inženýrství v Pythonu

Adam Spannbauer

Machine Learning Engineer at Eastman

Vytvoření třídy Tweet

  Soubor třídy Tweet

Principy softwarového inženýrství v Pythonu

Víceúrovňová dědičnost

Strom dědičnosti

Principy softwarového inženýrství v Pythonu

Víceúrovňová dědičnost

Rozšířený strom dědičnosti

Principy softwarového inženýrství v Pythonu

Vícenásobná dědičnost

Strom vícenásobné dědičnosti

Principy softwarového inženýrství v Pythonu

Víceúrovňová dědičnost a 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!")

Více o vícenásobné dědičnosti a super().

Principy softwarového inženýrství v Pythonu

Víceúrovňová dědičnost a 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!
Principy softwarového inženýrství v Pythonu

Přehled zděděných atributů

# 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']
Principy softwarového inženýrství v Pythonu

Pojďme cvičit!

Principy softwarového inženýrství v Pythonu

Preparing Video For Download...