xxxxxxxxxx
# using regex to test for variations for elements in the substring list
import re
a = ['a', 'b', 'c']
if any(re.findall(r'a|b|c', str, re.IGNORECASE)):
# so you don't need to specify sentence case or lower case
print('possible matches thanks to regex')
else:
print 'no matches'
# alternatively if list a is really long
if any(re.findall(r'|'.join(a), str, re.IGNORECASE))
xxxxxxxxxx
# any() to return True of any items in the list exist in the string
a_string = "A string is more than its parts!"
matches = ["more", "wholesome", "milk"]
if any(x in a_string for x in matches):