2011-10-10 16 views
6

私はかなりPythonを使い始めていますが、SQL WHEREに似たリスト内の値であるかどうかを調べるために値をテストする簡潔な方法があるのだろうかと思いました句。これが基本的な質問であればごめんなさい。リストにある変数をチェックする

MsUpdate.UpdateClassificationTitle in (
     'Critical Updates', 
     'Feature Packs', 
     'Security Updates', 
     'Tools', 
     'Update Rollups', 
     'Updates', 
     ) 

すなわち、私が書きたい:

if MsUpdate.UpdateClassificationTitle in (
     'Critical Updates', 
     'Feature Packs', 
     'Security Updates', 
     'Tools', 
     'Update Rollups', 
     'Updates' 
     ): 
    then_do_something() 
+0

で使用していることを確認してくださいはい、リストの正しい構文を使用除いて、それを行います。 – Marcin

+0

これはPythonタプルかSQLセットですか?これはPythonのリストではないからです。 – BoltClock

+1

'('と ')'を '['と ']'にそれぞれ変更します。 :) –

答えて

12

は十分簡潔ようだが、あなたはタプルに名前を付ける必要があります一度よりも、それ以上を使用している場合:

titles = ('Critical Updates', 
    'Feature Packs', 
    'Security Updates', 
    'Tools', 
    'Update Rollups', 
    'Updates') 

if MsUpdate.UpdateClassificationTitle in titles: 
    do_something_with_update(MsUpdate) 

タプル使用括弧。リストを必要とする場合は、大括弧で囲んでください。または、より高速なルックアップを持つセットを使用します。

11

それは非常に簡単です:

sample = ['one', 'two', 'three', 'four'] 

if 'four' in sample: 
    print True 
2

あなたはないが、例えば

username = ["Bob", "Kyle"] 

name = "Kyle" 

if name in username: 
    print("step 1") 
    login = 1 
else: 
    print("Invalid User") 
+1

こんにちは! StackOverflowへようこそ。 Pythonコードが適切にフォーマットされていることを確認してください。現在の書式設定はコンパイルされません。 'edit'ボタンを使って答えを変更することができます。 – rrauenza

関連する問題