2016-04-25 5 views
0

文字列にリストの項目が存在しないことを確認します。私は現時点ではPythonのoneline foreachでの文字列の照合

presents = False 
for item in item_list: 
    if item in string_control: 
     presents = True 
     break; 

1行だけでそれを行う方法はありますか?私は実際にこれらのタイプの制御を頻繁に行います。

答えて

2

はい:

presents = any(x in string_control for x in item_list) 
+0

恐ろしい応答を作品ありがとう – jedema

1

私はstring_controlにこのような値があると思います。 presentsは、あなたのコードと同じものを示すブール値になりますが、ほとんどの場合、boolへのキャストは必要ありません。私。これはおそらく、あまりにも正常に動作します:presents = [i for i in item_list if i == string_control]

string_control = None 
presents = bool([i for i in item_list if i == string_control]) 
+0

私はstring_controlがリストではなく、それが正しい –

+0

なしだと思います。ありがとうございました ! – jedema

関連する問題