Select Page

Suppose you have multiple variables declared in Python and want to check if any of them equals a given value. The usual way of doing this is as follows.

``````x = 5
y = 12
z = 39
if x == 11 or y == 11 or z ==11:
print("value exists in variables")
else:
print("value does not exist in variables")```Code language: Python (python)```

But an even more pythonic way of getting the same thing done is as follows.

``````if 11 in {x,y,z}:
print("value exists in variables")
else:
print("value does not exist in variables")```Code language: Python (python)```

In the above code, we are creating a set containing all the variables. And then simply checking whether the value in question is a member of the set or not. This is a more readable and a more pythonic way to check whether a value exists in a given list of variables.

## Check whether a value exists in a list in Python

The same notation can also be used to check whether a value exists in a list in Python.

``````lst =  [13,44,56,7]
if 11 in lst:
print("value exists in list")
else:
print("value does not exist in list")```Code language: Python (python)```

This works well for small lists. However, if the list is very large, it would be better to convert it into a set, and then do the comparison.

``````lst =  [13,44,56,7]
st = set(lst)
if 11 in st:
print("value exists in list")
else:
print("value does not exist in list")```Code language: Python (python)```

That will increase the speed, because in case of list, the program will have to check the value against each variable in the list. But in case of a set, it is a simple hash check, because set is implemented as a hash table in Python.