Die __contains__ Methode in Python
Python __contains__
ist eine Methode der String-Klasse in Python. Es kann prüfen, ob ein bestimmter Teilstring Teil einer Zeichenkette ist oder nicht.
Es ist eine magische Methode. Solche Methoden sollen nicht explizit aufgerufen werden und werden als Teil anderer integrierter Operationen aufgerufen. In diesem Fall ist die Methode __contains__
dem Operator in
zugeordnet.
Die Funktion __contains__
definiert, wie sich die Instanzen auf der rechten Seite des Operators in
verhalten – der Operator in
prüft, ob ein bestimmter Wert in einer Sequenz vorhanden ist oder nicht.
Zum Beispiel,
str1 = "Delftstack"
str2 = "Del"
val = str1.__contains__(str2)
print(val)
Ausgabe:
True
Im obigen Beispiel haben wir mit der Methode __contains__
überprüft, ob ein bestimmter Teilstring in einem String vorhanden ist oder nicht.
Magische Methoden werden intern in der Klasse aufgerufen. Wir können die Methode __contains__
in einer Klasse verwenden, die sie aufruft, um eine Aktion auszuführen.
Wir können es überladen, um einen anderen Wert zurückzugeben, wenn es einer Klasse zugeordnet ist.
Zum Beispiel,
class abc(object):
name = "Delftstack"
def __contains__(self, m):
if self.name:
return False
b = abc()
print("stack" in b)
Ausgabe:
False
Im obigen Beispiel lassen wir die Methode __contains__
False zurückgeben, wenn eine TeilZeichenkette in einer Zeichenkette enthalten ist. Da er aufgerufen wird, wenn der Operator in
verwendet wird, ist die endgültige Ausgabe auch dann False, wenn der String stack
in Delftstack
vorhanden ist.