Используйте встроенный тип set .
>>> l = [0,1,4,8,87,6,4,7,5,'a','f','er','fa','vz']
>>> s = (8,5,'f')
>>> bool(set(s) & set(l))
True
Методы набора также будут принимать итерации в качестве аргументов, избегая создания набора.
Наиболее краткий:
2.6 предоставляет set.isdisjoint (other) , который, вероятно, оптимизирован для возврата, как только будет найден общий элемент.
>>> not set(l).isdisjoint(s)
True
Если вы хотите выполнить цикл:
>>> any((val in s) for val in l)
True