Одинаковые буквы

Напишите функцию, которая будет принимать две строки и возвращать строку, состоящую из букв, общих для переданных ей строк.

Примеры

shared_letters("house", "home") ➞ "eho"
shared_letters("Micky", "mouse") ➞ "m"
shared_letters("house", "villa") ➞ ""

Примечания

  • Если совпадений букв нет, функция должна вернуть пустую строку
  • Функция должна быть нечувствительной к регистру (если в одной строке есть буква A, а в другой a, то функция возвращает a.
  • Буквы в итоговой строке должны быть отсортированы перед ее возвратом.

Варианты решения

def shared_letters(a, b):
    return "".join(sorted(set(a.lower()) & set(b.lower())))
def shared_letters(a, b):
    return ''.join(sorted(set(l for l in a.lower() if l in b.lower())))