In this tutorial we learn about get current date and time in python with some cool and easy examples
Show how inheritance works in Python
In Python, inheritance is a concept where a class can inherit attributes and methods from another class. The class that inherits from another class is called a subclass or derived class, and the class it inherits from is called a superclass or base class.
When a subclass inherits from a superclass, it can access all the attributes and methods of the superclass. This helps in reusing code and creating a hierarchy of classes.
To implement inheritance in Python, you define the subclass by putting the name of the superclass in parentheses after the subclass name.
Types Of Inheritance:
- Single Inheritance
- Multiple Inheritance
- MultiLevel Inheritance
- Hierarchical Inheritance
- Hybrid Inheritance
Single Inheritance:
Single inheritance enables a derived class to inherit properties from a single parent class, thus enabling code reusability and the addition of new features to existing code.
class Parent: def func1(self): print("It is parent class.") class Child(Parent): def func2(self): print("It is child class.") object = Child() object.func1() object.func2()
Output:
It is parent class. It is child class.
Multiple Inheritance:
When a class can be derived from more than one base class this type of inheritance is called multiple inheritances. In multiple inheritances, all the features of the base classes are inherited into the derived class.
class Mother: mothername = "" def mother(self): print(self.mothername) class Father: fathername = "" def father(self): print(self.fathername) class Son(Mother, Father): def parents(self): print("Father :", self.fathername) print("Mother :", self.mothername) s1 = Son() s1.fathername = "Mahi" s1.mothername = "Sri" s1.parents()
Output:
Mahi Sri
Multilevel Inheritance :
In multilevel inheritance, features of the base class and the derived class are further inherited into the new derived class. This is similar to a relationship representing a child and a grandfather.
class Grandfather: def __init__(self, grandfathername): self.grandfathername = grandfathername class Father(Grandfather): def __init__(self, fathername, grandfathername): self.fathername = fathername Grandfather.__init__(self, grandfathername) class Son(Father): def __init__(self, sonname, fathername, grandfathername): self.sonname = sonname Father.__init__(self, fathername, grandfathername) def print_name(self): print('Grandfather name :', self.grandfathername) print("Father name :", self.fathername) print("Son name :", self.sonname) s1 = Son('Prince', 'Rampal', 'Lal mani') print(s1.grandfathername) s1.print_name()
Output:
Lal mani Grand father name : Lal mani Father name : Rampal Son name : Prince
Hierarchical Inheritance:
When more than one derived class are created from a single base this type of inheritance is called hierarchical inheritance. In this program, we have a parent (base) class and two child (derived) classes.
class Parent: def func1(self): print("This function is in parent class.") class Child1(Parent): def func2(self): print("This function is in child 1.") class Child2(Parent): def func3(self): print("This function is in child 2.") object1 = Child1() object2 = Child2() object1.func1() object1.func2() object2.func1() object2.func3()
Output:
This function is in parent class. This function is in child 1. This function is in child 2.
Hybrid Inheritance:
Inheritance consisting of multiple types of inheritance is called hybrid inheritance.
class School: def func1(self): print("This function is in school.") class Student1(School): def func2(self): print("This function is in student 1. ") class Student2(School): def func3(self): print("This function is in student 2.") class Student3(Student1, School): def func4(self): print("This function is in student 3.") object = Student3() object.func1() object.func2()
Output:
This function is in school. This function is in student 1.