Q: Как найти элементы во втором списке состоящие из элементов первого? Например :
lst1 = ['1', '2', '3']
lst2 = ['123', '1112' , '134']

Результат будет :
['123', '1112']


A: я бы сделал так:
In [150]: [s for s in lst2 if not (set(s) - set(lst1))]
Out[150]: ['123', '1112']

логика:
In [151]: [set(s) - set(lst1) for s in lst2]
Out[151]: [set(), set(), {'4'}]


A: [s for s in lst2 if all(a in lst1 for a in s)]


A: Чтобы узнать присутствуют ли все символы слова в заданном наборе, можно использовать set.issuperset() метод, который говорит можно ли составить слово (элемент в lst2) из заданных символов (список lst1) без учёта повторений:
>>> chars = {'1', '2', '3'}
>>> can_build = chars.issuperset
>>> can_build('123')
True
>>> can_build('1112')
True
>>> can_build('134')
False

Или для ввода в вопросе:
print(*filter(set(lst1).issuperset, lst2))
# -> 123 1112

Чтобы список получить, как я явно показал в ответе к предыдущему вопросу:
result = list(filter(can_build, lst2))

Или:
result = [word for word in lst2 if can_build(word)]

