Это модифицированная версия решения @ DarrylG, помогающая уменьшить счетчик строк.
flatten = lambda lst: sum((flatten(v) if isinstance(v, list) else [v] for v in lst), [])
flatten(lt)
Лямбда-функции могут быть рекурсивными, но на одну строку короче объявлений функций.
И это также может быть в одной строке, используя ;
flatten = lambda lst: sum((flatten(v) if isinstance(v, list) else [v] for v in lst), []) ; flatten(lt)