2011-10-10 18 views
6

Soy bastante nuevo en Python, y me preguntaba si había una manera concisa de probar un valor para ver si es uno de los valores en la lista, similar a un SQL DONDE cláusula. Lo siento si esta es una pregunta básica.Verifique la variable si está en una lista

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

es decir, yo quiero escribir:

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

Sí, hacer que, excepto utilizar la sintaxis correcta para las listas. – Marcin

+0

¿Es eso una tupla de Python o un conjunto de SQL? Porque no es una lista de Python. – BoltClock

+1

Cambiar '(' y ')' a '[' y ']', respectivamente. :) –

Respuesta

12

parece bastante sucinta, pero si se está usando más de una vez se debe nombrar la tupla:

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

if MsUpdate.UpdateClassificationTitle in titles: 
    do_something_with_update(MsUpdate) 

uso Tuplas paréntesis. Si desea una lista, cámbiela a corchetes. O use un conjunto, que tiene búsquedas más rápidas.

11

Es bastante sencillo:

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

if 'four' in sample: 
    print True 
2

Asegúrese de que está utilizando en no es, por ejemplo

username = ["Bob", "Kyle"] 

name = "Kyle" 

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

¡Hola! Bienvenido a StackOverflow. Asegúrate de que el código de Python esté formateado correctamente. El formato actual no se compilará. Puede usar el botón 'edit' para modificar su respuesta. – rrauenza

Cuestiones relacionadas