How to make a flat list out of a list of lists
Is there a shortcut to make a simple list out of a list of lists in Python?
I can do it in a for
loop, but is there some cool "one-liner"?
I tried it with functools.reduce()
:
from functools import reduce
l = [[1, 2, 3], [4, 5, 6], [7], [8, 9]]
reduce(lambda x, y: x.extend(y), l)
But I get this error:
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<stdin>", line 1, in <lambda>
AttributeError: 'NoneType' object has no attribute 'extend'