3

文字列が次のような複数の単語と一致するかどうかを確認するために、単純なifelseループを作成しています。

if "word1" in data or "word2" in data or "word3" in data:
    ....

この種の比較を処理するためのより包括的な方法があるかどうかはわかりませんか?

どうもありがとうございます

4

3 に答える 3

10
if any(word in data for word in ('word1', 'word2', 'word3')):
    ...

パフォーマンスの問題が発生した場合は、比較を実行dataする前にに変換することをお勧めします。set

于 2012-07-30T18:29:34.427 に答える
8

できるよ:

if any(x in data for x in ('word1', 'word2', 'word3')):
于 2012-07-30T18:29:26.457 に答える
6

セットが交差しないのはなぜですか?

if set(["word1", "word2","word3"]) & set(data):
    # do stuff!
于 2012-07-30T18:30:27.980 に答える