inheritage in python (base class, derived class) - Serbipunk/notes GitHub Wiki

super(DerivedClassName, self).__init__()

py3

oj8k

import os

class BaseClass(object):

    def __init__(self):

        self.p1 = 'base_class'

        print(self.p1)

class DerivedClass(BaseClass):

    def __init__(self):

        super(DerivedClass, self).__init__()

        self.p2 = 'derived_class'

        print(self.p2)

dc = DerivedClass()

base_class
derived_class

dir(dc)

['__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__',
 'p1',
 'p2']

py2

oj8k

import os

class BaseClass(object):

    def __init__(self):

        self.p1 = 'base_class'

        print(self.p1)

class DerivedClass(BaseClass):

    def __init__(self):

        super(DerivedClass, self).__init__()

        self.p2 = 'derived_class'

        print(self.p2)

dc = DerivedClass()

base_class
derived_class

dir(dc)

['__class__',
 '__delattr__',
 '__dict__',
 '__doc__',
 '__format__',
 '__getattribute__',
 '__hash__',
 '__init__',
 '__module__',
 '__new__',
 '__reduce__',
 '__reduce_ex__',
 '__repr__',
 '__setattr__',
 '__sizeof__',
 '__str__',
 '__subclasshook__',
 '__weakref__',
 'p1',
 'p2']