IIUC, затем вы можете использовать itertools.product
, чтобы получить произведение двух разных списков, а затем выполнить пересечение наборов, чтобы найти общие слова
from itertools import product
x=['casa','lo','pre','computer']
y=['music','sun','ve','sident','house']
dic=['sunday','love','president','house','computer']
set(list(map(''.join, list(product(x, y)))) + x + y) & set(dic)
ВЫХОД:
{'computer', 'house', 'love', 'president'}
Еслиожидаемый результат не должен включать house
из второго списка, а затем не добавлять список y
в окончательный составной список
set(list(map(''.join, list(product(x, y)))) + x) & set(dic)
OUTPUT
{'computer', 'love', 'president'}