Comparando duas listas em Python

Então, para dar um exemplo grosseiro sem qualquer código escrito para ele ainda, estou curioso em saber como seria capaz de descobrir o que ambas as listas têm em comum.

Exemplo:

listA = ['a', 'b', 'c']
listB = ['a', 'h', 'c']

Eu gostaria de poder retornar:

['a', 'c']

Como assim?

Possivelmente com cadeias variáveis ​​como:

john = 'I love yellow and green'
mary = 'I love yellow and red'

E retorno:

'I love yellow and'

questionAnswers(3)

yourAnswerToTheQuestion