Pythonの文字列の等しさは、==
演算子または__eq__()
関数を使用してチェックできます。Pythonの文字列は大文字と小文字を区別するので、これらの等価性チェックメソッドも大文字と小文字を区別します。
Python文字列の等しい
2つの文字列が等しいかどうかをチェックするいくつかの例を見てみましょう。
s1 = 'Apple'
s2 = 'Apple'
s3 = 'apple'
# 大文字と小文字を区別する等しいチェック
if s1 == s2:
print('s1 and s2 are equal.')
if s1.__eq__(s2):
print('s1 and s2 are equal.')
出力:
s1 and s2 are equal.
s1 and s2 are equal.
不等チェックを実行したい場合は、!=
演算子を使用できます。
if s1 != s3:
print('s1 and s3 are not equal')
出力:s1とs3は等しくありません
Python文字列の等しい大文字と小文字を区別しないチェック
時々、2つの文字列が等しいかどうかをチェックする際に大文字と小文字を気にしない場合があります。大文字と小文字を区別しない等価性チェックには、casefold()
、lower()
、またはupper()
関数を使用できます。
if s1.casefold() == s3.casefold():
print(s1.casefold())
print(s3.casefold())
print('s1 and s3 are equal in case-insensitive comparison')
if s1.lower() == s3.lower():
print(s1.lower())
print(s3.lower())
print('s1 and s3 are equal in case-insensitive comparison')
if s1.upper() == s3.upper():
print(s1.upper())
print(s3.upper())
print('s1 and s3 are equal in case-insensitive comparison')
出力:
apple
apple
s1 and s3 are equal in case-insensitive comparison
apple
apple
s1 and s3 are equal in case-insensitive comparison
APPLE
APPLE
s1 and s3 are equal in case-insensitive comparison
Pythonの文字列は特殊文字と等しい
文字列に特殊文字が含まれる例をいくつか見てみましょう。
s1 = '$#ç∂'
s2 = '$#ç∂'
print('s1 == s2?', s1 == s2)
print('s1 != s2?', s1 != s2)
print('s1.lower() == s2.lower()?', s1.lower() == s2.lower())
print('s1.upper() == s2.upper()?', s1.upper() == s2.upper())
print('s1.casefold() == s2.casefold()?', s1.casefold() == s2.casefold())
出力:
s1 == s2? True
s1 != s2? False
s1.lower() == s2.lower()? True
s1.upper() == s2.upper()? True
s1.casefold() == s2.casefold()? True
これで、Pythonで2つの文字列が等しいかどうかをチェックするのについては以上です。
完全なスクリプトや他のPythonの文字列の例は、当社のGitHubリポジトリから確認できます。
Source:
https://www.digitalocean.com/community/tutorials/python-string-equals