Python, wie man eine Liste verflachert
flat_list = [item for sublist in l for item in sublist]
Talented Thrush
flat_list = [item for sublist in l for item in sublist]
l = [[1, 2], [3, 4], [5, 6, 7]]
flat_list = [item for sublist in l for item in sublist]
# flat_list = [1, 2, 3, 4, 5, 6, 7]
flat_list = [item for sublist in l for item in sublist]
#which is equivalent to this
flat_list = []
for sublist in l:
for item in sublist:
flat_list.append(item)
flattened = [val for sublist in list_of_lists for val in sublist]
# idiomatic python
# using itertools
import itertools
list_of_list = [[1, 2, 3], [4, 5], [6]]
chain = itertools.chain(*images)
flattened_list = list(chain)
# [1, 2, 3, 4, 5, 6]
nested_lists = [[1, 2], [[3, 4], [5, 6], [[7, 8], [9, 10], [[11, [12, 13]]]]]]
flatten = lambda x: [y for l in x for y in flatten(l)] if type(x) is list else [x]
flatten(nested_lists)
# [1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13]