Pythonの文字列は等しい

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