2016-10-01 12 views
2

文字列のタプルに複数の部分文字列が存在するかどうかを調べる最もエレガントな方法はどれですか?python:文字列のタプルであるかどうかを確認する

tuple = ('first-second', 'second-third', 'third-first') 
substr1 = 'first' 
substr2 = 'second' 
substr3 = 'third' 
#if substr1 in tuple and substr2 in tuple and substr3 in tuple: 
# should return True 
+3

が、これはPythonのキーワードであるtuple' '使用しないでください。 – AChampion

+1

@AChampionこれはキーワードではありません。そうであれば、それに割り当てても機能しません。 –

+0

'tuple'は組み込みです - 修正していただきありがとうございます。 – AChampion

答えて

2

all(any(substr in s for s in data) for substr in ['first', 'second', 'third']) 
+0

ニース、私はこれが好き!ありがとうございました。 –

2
any(substr in str_ for str_ in tuple_) 

あなたはそれで開始し、同様にall()で見ることができます。あなたはとてもanyallを使用して、サブストリングのそれぞれの組を反復処理する必要が

+1

'tuple_'を固定したのと同じですが、' str'を使用しました... – AChampion

+0

それは誤字です。ありがとう。 – s16h

+0

まだ別のstrがあると思います –

関連する問題