【Python入門】文字列が文字リストに含まれるか判定する方法(その逆も解説)
Pythonでは、ある文字列が文字のリスト(リスト内の連結した文字)の中に存在するかどうかを確認したい場面があります。そのような場合は、「in」演算子と「join」メソッドを組み合わせることで、シンプルかつ効率的に判定できます。
以下に具体的な実装例を示します。
サンプルコード
my_string = 'python'
print("The string is :")
print(my_string)
my_key = ['p', 'y', 't', 'h', 'o', 'n', 't', 'e', 's', 't']
print("The key is ")
print(my_key)
joined_list = ''.join(my_key)
my_result = my_string in joined_list
print("The result is :")
if(my_result == True):
print("The string is present in the character list")
else:
print("The string is not present in the character list")
実行結果
The string is : python The key is ['p', 'y', 't', 'h', 'o', 'n', 't', 'e', 's', 't'] The result is : The string is present in the character list
コードの解説
まず、判定対象となる文字列を定義し、コンソールに表示します。
次に、比較元となるキー(文字のリスト)を定義して表示します。
.join()メソッドを使い、リスト内の各要素を空文字''で連結して1つの文字列に変換します。この例では'pythontest'という文字列が生成されます。連結結果は変数
joined_listに代入されます。「in」演算子を使って、元の文字列
my_stringが連結後の文字列の中に含まれているかどうかを判定します。判定結果(True / False のブール値)は変数
my_resultに代入されます。最後に、このブール値に応じて条件分岐を行い、該当するメッセージをコンソールに出力します。
ポイントまとめ
この手法のポイントは、リストと文字列を直接比較できないため、join() でリストを文字列化してから「in」演算子で部分一致を確認する点です。逆に、文字列を文字のリストに変換したい場合は list(文字列) を使えば簡単に実現できます。
-
Pythonでリストを出力する方法|インデックスの基本から実践的な出力テクニックまで
Pythonのリストとは? Pythonのリスト(list)は、複数の要素をひとつにまとめて管理できるデータ型です。リスト内の各要素は順序を持って格納されており、それぞれの位置(インデックス)を指定することで、任意の要素にアクセスできます。 インデックスは0から始まる リストのインデックスは0から始まる点に注意が必要です。つまり、最初の要素が list[0]、2番目の要素が list[1]、3番目の要素が list[2] に対応します。 例えば、以下のようなリストを考えてみましょう。 numbers = [10, 20, 50, 40] print(numbers[2]) # 出力結果:5
-
Pythonで文字列やリストからタプルを作成する方法をわかりやすく解説
tuple()関数の基本的な使い方Pythonには、さまざまなオブジェクトをタプルに変換できる組み込み関数 tuple() が用意されています。この関数を使うことで、文字列を個々の文字からなるタプルに変換したり、リストオブジェクトをそのままタプルに変換したりできます。ここでは、それぞれの具体的な使い方を見ていきましょう。1. 文字列をタプルに変換する文字列を tuple() の引数として渡すと、各文字が1つの要素となったタプルが返されます。>>> tuple(TutorialsPoint) (T, u, t, o, r, i, a, l, s, P, o, i, n, t)こ