Kann man vergleichen strings in python wie in Java mit .gleich?
Können Sie strings vergleichen in Python in irgendeiner anderen Weise, abgesehen von ==
?
Gibt es etwas wie .equals
in Java?
"Hello, World!".__eq__("other string")
. Wenn Sie==
python sieht einfach die__eq__
- Methode der Objekte.- Zu einfach, können Sie leicht es auf google Suche.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Gibt es zwei Möglichkeiten, dies zu tun. Die erste ist die Verwendung der
operator
- Modul enthält Funktionen für alle mathematischen Operatoren:Die andere ist die Verwendung der
__eq__
Methode, die eine Zeichenfolge, die aufgerufen wird, wenn Sie verwenden==
:Könnten Sie tun:
Dies ist ähnlich wie in Java, dass Sie nicht mit einer expliziten operator.
Jedoch in Java bist du mit einem Aufruf der Methode auf die
String
Klasse (d.h.,myString.equals(otherString)
) aber in Pythoneq
ist nur eine Funktion, die Sie importieren aus einem Modul namensoperator
(siehe- operator.eq
in der Dokumentation).Laut die docs:
So
==
ist wie.equals
in Java (außer es funktioniert, wenn der linken Seite istnull
).Den Gegenwert von Java
==
Betreiber ist dieis
- operator, wie in:Was ist die Notwendigkeit für die Verwendung von anderen als '==' als python-strings sind unveränderlich und memoized standardmäßig?
Wie schon in anderen Antworten, die Sie verwenden können, 'ist' für die Referenz(id) Vergleich.