m = re.findall('^(?=.*Tim)(?=.*stupid).+$', str, re.MULTILINE)
m
m = re.findall('^(?=.*Tim).*stupid', str, re.MULTILINE)
m
Регулярное выражение для существования некоторых слов, порядок которых не имеет значения