Polymorphismus in Python mit BEISPIELEN
Was ist Polymorphismus?
Polymorphismus kann als ein Zustand definiert werden, der in vielen verschiedenen Formen auftritt. Es ist ein Konzept in Python Programmierung, bei der ein Objekt definiert ist in Python kann auf verschiedene Arten verwendet werden. Es ermรถglicht dem Programmierer, mehrere Methoden in einer abgeleiteten Klasse zu definieren, und es hat den gleichen Namen wie in der รผbergeordneten Klasse. Solche Szenarien unterstรผtzen die Methodenรผberladung in Python.
Polymorphismus in Operatoren
Ein Operator in Python hilft bei der Durchfรผhrung mathematischer und verschiedener anderer Programmieraufgaben. Beispielsweise hilft der Operator '+' bei der Addition zwischen zwei ganzzahligen Typen in Python, und auf die gleiche Weise hilft derselbe Operator beim Verketten von Zeichenketten in Python Programmierung.
Nehmen wir ein Beispiel fรผr + (plus) Betreiber in Python um eine Anwendung des Polymorphismus anzuzeigen in Python wie unten dargestellt:
Python Code:
p = 55
q = 77
r = 9.5
g1 = "Guru"
g2 = "99!"
print("the sum of two numbers",p + q)
print("the data type of result is",type(p + q))
print("The sum of two numbers",q + r)
print("the data type of result is", type (q + r))
print("The concatenated string is", g1 + g2)
print("The data type of two strings",type(g1 + g2))
Ausgang:
the sum of two numbers 132 the data type of result is <class 'int'> The sum of the two numbers 86.5 the data type of result is <class 'float'> The concatenated string is Guru99! The data type of two strings <class 'str'>
Das obige Beispiel kann auch als Beispiel fรผr eine Operatorรผberladung angesehen werden.
Polymorphismus in benutzerdefinierten Methoden
Eine benutzerdefinierte Methode im Python Programmiersprache sind Methoden, die der Benutzer erstellt und mit dem Schlรผsselwort def mit dem Funktionsnamen deklariert wird.
Polymorphismus in der Python Die Programmiersprache wird durch รberladen und รberschreiben von Methoden erreicht. Python definiert Methoden mit dem Schlรผsselwort โdefโ und mit demselben Namen sowohl in der untergeordneten als auch in der รผbergeordneten Klasse.
Nehmen wir das folgende Beispiel: โ
Python Code:
from math
import pi
class square:
def __init__(self, length):
self.l = length
def perimeter(self):
return 4 * (self.l)
def area(self):
return self.l * self.l
class Circle:
def __init__(self, radius):
self.r = radius
def perimeter(self):
return 2 * pi * self.r
def area(self):
return pi * self.r * * 2
# Initialize the classes
sqr = square(10)
c1 = Circle(4)
print("Perimeter computed for square: ", sqr.perimeter())
print("Area computed for square: ", sqr.area())
print("Perimeter computed for Circle: ", c1.perimeter())
print("Area computed for Circle: ", c1.area())
Ausgang:
Perimeter computed for square: 40 Area computed for square: 100 Perimeter computed for Circle: 25.132741228718345 Area computed for Circle: 50.26548245743669
Im obigen Code gibt es zwei benutzerdefinierte Methoden, Umfang und Flรคche, die in den Klassen Kreis und Quadrat definiert sind.
Wie oben gezeigt, rufen sowohl die Kreisklasse als auch die Quadratklasse denselben Methodennamen auf, der die Eigenschaften des Polymorphismus anzeigt, um die erforderliche Ausgabe zu liefern.
Polymorphismus in Funktionen
Die integrierten Funktionen in Python sind so konzipiert und kompatibel, dass sie mehrere Datentypen ausfรผhren kรถnnen. Python, Len() ist eine der wichtigsten integrierten Funktionen.
Es funktioniert mit mehreren Datentypen: Liste, Tupel, Zeichenfolge und Wรถrterbuch. Die Funktion Len() gibt bestimmte Informationen zurรผck, die auf diese vielen Datentypen ausgerichtet sind.
Die folgende Abbildung zeigt, wie Polymorphismus angewendet werden kann in Python in Bezug auf eingebaute Funktionen: โ
Das folgende Programm hilft bei der Veranschaulichung der Anwendung von Polymorphismus in Python: -
Python Code:
print ("The length of string Guru99 is ",len("Guru99"))
print("The length of list is ",len(["Guru99","Example","Reader"]))
print("The length of dictionary is ",len({"Website name":"Guru99","Type":"Education"}))
Ausgang:
The length of string Guru99 is 6 The length of the list is 3 The length of the dictionary is 2
Im obigen Beispiel ist die Funktion Len () Python fรผhrt Polymorphismus fรผr Zeichenfolgen-, Listen- und Wรถrterbuchdatentypen durch.
Polymorphismus und Vererbung
Vererbung in Python kann als das Programmierkonzept definiert werden, bei dem eine definierte Kindklasse Eigenschaften von einer anderen Basisklasse erbt, die in Python.
Es gibt zwei Schlรผssel Python Konzepte, die als Methodenรผberschreibung und Methodenรผberladung bezeichnet werden.
- Bei der Methodenรผberladung Python bietet die Mรถglichkeit, Methoden mit demselben Namen zu erstellen, um in einem bestimmten Codeabschnitt verschiedene Funktionen auszufรผhren. Es ermรถglicht das รberladen von Methoden und deren Verwendung, um verschiedene Aufgaben einfacher auszufรผhren.
- Bei der Methodenรผberschreibung Python รผberschreibt den Wert, der in รผbergeordneten und untergeordneten Klassen einen รคhnlichen Namen hat.
Betrachten wir das folgende Beispiel fรผr Polymorphismus und Vererbung: โ
Python Code:
class baseclass:
def __init__(self, name):
self.name = name
def area1(self):
pass
def __str__(self):
return self.name
class rectangle(baseclass):
def __init__(self, length, breadth):
super().__init__("rectangle")
self.length = length
self.breadth = breadth
def area1(self):
return self.length * self.breadth
class triangle(baseclass):
def __init__(self, height, base):
super().__init__("triangle")
self.height = height
self.base = base
def area1(self):
return (self.base * self.height) / 2
a = rectangle(90, 80)
b = triangle(77, 64)
print("The shape is: ", b)
print("The area of shape is", b.area1())
print("The shape is:", a)
print("The area of shape is", a.area1())
Ausgang:
The shape is: a triangle The area of a shape is 2464.0 The shape is: a rectangle The area of a shape is 7200
Im obigen Code haben die Methoden denselben Namen wie die Methode โinitโ und die Methode โarea1โ. Die Objekte der Klassen โQuadratโ und โRechteckโ werden dann verwendet, um die beiden Methoden aufzurufen, um unterschiedliche Aufgaben auszufรผhren und die Ausgabe der Flรคche von Quadrat und Rechteck bereitzustellen.
Polymorphismus mit den Klassenmethoden
Die Python Programmierung ermรถglicht es Programmierern, Polymorphismus und Methodenรผberladung mit Klassenmethoden zu erreichen. Die verschiedenen Klassen in Python kรถnnen Methoden haben, die im gleichen Namen deklariert sind, รผber die Python Code.
In Pythonkรถnnen zwei verschiedene Klassen definiert werden. Eine wรคre die untergeordnete Klasse und sie leitet Attribute von einer anderen definierten Klasse ab, die als รผbergeordnete Klasse bezeichnet wird.
Das folgende Beispiel veranschaulicht das Konzept des Polymorphismus mit Klassenmethoden: โ
Python Code:
class amazon:
def __init__(self, name, price):
self.name = name
self.price = price
def info(self):
print("This is product and am class is invoked. The name is {self.name}. This costs {self.price} rupees.")
class flipkart:
def __init__(self, name, price):
self.name = name
self.price = price
def info(self):
print(f "This is product and fli class is invoked. The name is {self.name}. This costs {self.price} rupees.")
FLP = flipkart("Iphone", 2.5)
AMZ = amazon("Iphone", 4)
for product1 in (FLP, AMZ):
product1.info()
Ausgang:
This is a product, and fli class is invoked. The name is iPhone, and this costs 2.5 rupees. This is a product, and am class is invoked. The name is iPhone, and this costs 4 rupees.
Im obigen Code verwenden zwei verschiedene Klassen namens Flipkart und Amazon die gleichen Methodennamen info und init, um entsprechende Preisangaben fรผr das Produkt bereitzustellen und das Konzept des Polymorphismus in weiter zu veranschaulichen Python.
Unterschied zwischen Methodenรผberladung und Polymorphismus zur Kompilierungszeit
Beim Polymorphismus zur Kompilierungszeit muss der Compiler des Python Programm lรถst den Aufruf auf. Polymorphismus zur Kompilierungszeit wird durch Methodenรผberladung erreicht.
Die Python Der Compiler lรถst die Aufrufe wรคhrend der Laufzeit nicht auf Polymorphismus auf. Es wird auch als Methodenรผberschreibung klassifiziert, bei der dieselben Methoden รคhnliche Signaturen oder Eigenschaften aufweisen, aber Teil unterschiedlicher Klassen sind.
Zusammenfassung
- Polymorphismus kann als ein Zustand definiert werden, der in vielen verschiedenen Formen auftritt.
- Ein Operator in Python hilft bei der Durchfรผhrung mathematischer und verschiedener anderer Programmieraufgaben.
- Eine benutzerdefinierte Methode im Python Programmiersprache sind Methoden, die der Benutzer erstellt und mit dem Schlรผsselwort def mit dem Funktionsnamen deklariert wird.
- Polymorphismus in Python bietet mehrere wรผnschenswerte Eigenschaften, beispielsweise fรถrdert es die Wiederverwendbarkeit von Codes, die fรผr verschiedene Klassen und Methoden geschrieben wurden.
- Eine untergeordnete Klasse ist eine abgeleitete Klasse und erhรคlt ihre Attribute von der รผbergeordneten Klasse.
- Der Polymorphismus wird auch durch รberschreiben von Methoden zur Laufzeit und รberladen von Methoden zur Kompilierungszeit erreicht.
- Polymorphismus in Python wird auch durch Operatorรผberladung und Klassenmethoden erreicht.


