inheritance of coursea language feature would not be worthy of the name "classwithout supporting inheritance the syntax for derived class definition looks like thisclass derivedclassname(baseclassname)the name baseclassname must be defined in scope containing the derived class definition in place of base class nameother arbitrary expressions are also allowed this can be usefulfor examplewhen the base class is defined in another moduleclass derivedclassname(modname baseclassname)execution of derived class definition proceeds the same as for base class when the class object is constructedthe base class is remembered this is used for resolving attribute referencesif requested attribute is not found in the classthe search proceeds to look in the base class this rule is applied recursively if the base class itself is derived from some other class there' nothing special about instantiation of derived classesderivedclassname(creates new instance of the class method references are resolved as followsthe corresponding class attribute is searcheddescending down the chain of base classes if necessaryand the method reference is valid if this yields function object derived classes may override methods of their base classes because methods have no special privileges when calling other methods of the same objecta method of base class that calls another method defined in the same base class may end up calling method of derived class that overrides it (for +programmersall methods in python are effectively virtual an overriding method in derived class may in fact want to extend rather than simply replace the base class method of the same name there is simple way to call the base class method directlyjust call baseclassname methodname(selfargumentsthis is occasionally useful to clients as well (note that this only works if the base class is accessible as baseclassname in the global scope python has two built-in functions that work with inheritanceuse isinstance(to check an instance' typeisinstance(objintwill be true only if obj __class__ is int or some class derived from int use issubclass(to check class inheritanceissubclass(boolintis true since bool is subclass of int howeverissubclass(floatintis false since float is not subclass of int multiple inheritance python supports form of multiple inheritance as well class definition with multiple base classes looks like thisclass derivedclassname(base base base ) inheritance