以外の方法で Python の文字列を比較できます==
か? .equals
Javaのようなものはありますか?
質問する
7212 次
4 に答える
4
これには 2 つの方法があります。operator
1 つ目は、すべての数学演算子の関数を含むモジュールを使用することです。
>>> from operator import eq
>>> x = "a"
>>> y = "a"
>>> eq(x, y)
True
>>> y = "b"
>>> eq(x, y)
False
>>>
もう 1 つは、__eq__
次の使用時に呼び出される文字列のメソッドを使用すること==
です。
>>> x = "a"
>>> y = "a"
>>> x.__eq__(y)
True
>>> y = "b"
>>> x.__eq__(y)
False
>>>
于 2013-11-13T22:19:21.353 に答える
2
あなたがすることができます:
import operator
a = "string1"
b = "string2"
print operator.eq(a, b)
これは、明示的な演算子を使用していないという点で Java に似ています。
ただし、Java ではString
クラス (つまりmyString.equals(otherString)
) でメソッド呼び出しを使用していますが、Python ではeq
、呼び出されたモジュールからインポートする関数にすぎませんoperator
(operator.eq
ドキュメントを参照)。
于 2013-11-13T22:19:02.123 に答える
0
Python 文字列はデフォルトで不変でメモ化されているため、「==」以外を使用する必要は何ですか?
他の回答で指摘されているように、参照(id)比較に「is」を使用できます。
于 2015-01-14T05:38:27.740 に答える