logo

Pythonで文字列に文字が含まれているかどうかを確認する

どのプログラミング言語でも最も頻繁に行われる操作の 1 つは、指定された文字列に部分文字列が含まれているかどうかを判断することです。 Python には、指定された文字列に文字が含まれているかどうかを判断するためのメソッドが多数あります。 Python の「in」演算子は比較演算のツールとして機能し、Python 文字列に文字が含まれているかどうかを判断する最も迅速かつ簡単な方法です。文字列に部分文字列が含まれているかどうかを確認するには、find()、index()、count() などの他の Python 関数を使用することもできます。

Python の「in」演算子の使用

Python の「in」演算子は、文字列が部分文字列を構成するかどうかを判断する最も迅速かつ簡単な方法です。文字列に文字が含まれている場合、この操作はブール値 true を返します。それ以外の場合は false を返します。

コード

選択ソートJava
 # Python program to show how to use the in operator to check if a string contains a substring # Creating a string str='Python Tutorial' print('The string 'tut' is present in the string: ', 'Tut' in str) 

出力:

 The string 'tut' is present in the string: True 

左の引数として指定された文字列が右の引数として指定された文字列内に含まれる場合、「in」演算子は True を返します。両側に 1 つずつ、2 つのパラメータを受け入れます。 Python の「in」演算子は大文字と小文字を区別する演算子であるため、大文字と小文字を別々に扱います。

__contains__() 関数の使用

Python の String クラスの __contains__() 関数は、指定された文字列に部分文字列が含まれているかどうかを判断する方法も提供します。 Python の「in」操作は、暗黙的に使用される場合、__contains__() メソッドを呼び出します。クラス オブジェクトが「in」演算子と「not in」演算子の右側に出現する場合、その動作は __contains__ メソッドによって定義されます。可能ではありますが、このメソッドを明示的に使用することは選択しません。最初の文字としてアンダースコアを含む関数は意味的にプライベートとみなされますが、読みやすさのために「in」演算子を使用することをお勧めします。

コード

 # Python program to show how to use the __contain__ method to check if a string contains a substring # Creating a string string = 'Python Tutorial' print('The string 'tut' is present in the string: ', string.__contains__('Tut')) 

出力:

 The string 'tut' is present in the string: True 

Python の str.find() メソッドの使用

string.find() テクニックを使用することもできます。 find() 関数は、指定された文字列に部分文字列が存在するかどうかを判断します。見つかった場合、find() 関数は -1 を返します。それ以外の場合は、文字列内の部分文字列の開始インデックスを与えます。

コード

Javaは配列に追加します
 # Python program to find a character in a string and get its index # Creating a string string = 'Python Tutorial' index = string.find('T') if index != -1: print('The character 'T' is present in the string at: ', index) else: print('The character is not present in the string') 

出力:

 The character 'T' is present in the string at: 7 

このアプローチは受け入れられます。ただし、str.find() を使用することは、このタスクを完了するための Python 的ではない方法です。長くなり、多少ごちゃ混ぜになりますが、それでも目的は達成できます。

str.count() メソッドの使用

文字列内の特定の部分文字列のインスタンスをカウントする場合は、Python count() 関数を使用します。指定された文字列内で部分文字列または文字が見つからない場合、関数は 0 を返します。

Java文字列比較

コード

 # Python program to check a character is present in the string using the count() function # Creating a string string = 'Python Tutorial' count = string.count('o') if count != 0: print(f'The character 'o' is present in the string {count} times.') else: print('The character is not present in the string') 

出力:

 The character 'o' is present in the string 2 times.