इस लेख में, हम पायथन 3.x या उससे पहले के संस्करण में इनहेरिटेंस और क्लासेस को एक्सटेंड करने के बारे में जानेंगे।
इनहेरिटेंस वास्तविक दुनिया के संबंधों को अच्छी तरह से दर्शाता है, पुन: प्रयोज्यता प्रदान करता है और ट्रांजिटिविटी का समर्थन करता है। यह तेज़ विकास समय, आसान रखरखाव और विस्तार में आसानी प्रदान करता है।
इनहेरिटेंस को मोटे तौर पर 5 प्रकारों में वर्गीकृत किया गया है -
- सिंगल
- मल्टीपल
- हायरार्किकल
- मल्टी-लेवल
- हाइब्रिड

जैसा कि ऊपर दिए गए चित्र में दिखाया गया है कि इनहेरिटेंस वह प्रक्रिया है जिसमें हम पैरेंट क्लास का ऑब्जेक्ट बनाए बिना अन्य क्लासेस की सुविधाओं तक पहुंचने का प्रयास करते हैं।
यहां हम सिंगल और हायरार्किकल इनहेरिटेंस के कार्यान्वयन के बारे में सीखेंगे।
सिंगल इनहेरिटेंस
उदाहरण
# पैरेंट क्लास
class Student():
# पैरेंट क्लास का कंस्ट्रक्टर
def __init__(self, name, enrollnumber):
self.name = name
self.enrollnumber = enrollnumber
def display(self):
print(self.name)
print(self.enrollnumber)
# चाइल्ड क्लास
class College(Student):
def __init__(self, name, enrollnumber, admnyear, branch):
self.admnyear = admnyear
self.branch = branch
# पैरेंट क्लास के __init__ को इनवोक करना
Student.__init__(self, name, enrollnumber)
# बेस/डेराइव्ड क्लास के लिए ऑब्जेक्ट बनाना
obj = College('Rohit', 42414802718, 2018, "CSE")
obj.display()
आउटपुट
Rohit
42414802718
मल्टीपल इनहेरिटेंस
उदाहरण
# पैरेंट क्लास
class Student():
# पैरेंट क्लास का कंस्ट्रक्टर
def __init__(self, name, enrollnumber):
self.name = name
self.enrollnumber = enrollnumber
def display(self):
print(self.name)
print(self.enrollnumber)
# चाइल्ड क्लास
class College(Student):
def __init__(self, name, enrollnumber, admnyear, branch):
self.admnyear = admnyear
self.branch = branch
# पैरेंट क्लास के __init__ को इनवोक करना
Student.__init__(self, name, enrollnumber)
# चाइल्ड क्लास
class University(Student):
def __init__(self, name, enrollnumber, refno, branch):
self.refno = refno
self.branch = branch
# पैरेंट क्लास के __init__ को इनवोक करना
Student.__init__(self, name, enrollnumber)
# बेस/डेराइव्ड क्लास के लिए ऑब्जेक्ट बनाना
obj_1 = College('Rohit', 42414802718, 2018, "CSE")
obj_1.display()
obj_2 = University('Rohit', 42414802718, "st2018", "CSE")
obj_2.display()
आउटपुट
Rohit 42414802718
Rohit 42414802718
निष्कर्ष
इस लेख में, हमने पायथन में इनहेरिटेंस के बारे में मोटे तौर पर सिंगल और हायरार्किकल इनहेरिटेंस के बारे में सीखा।