n = [[1, 2, 3], [4, 5, 6, 7, 8, 9]] def flatten(lists): results = [] for numbers in range(len(lists)): for i in range(len(lists[numbers])): results.append(numbers[i]) return results print flatten(n)
n = [[1, 2, 3], [4, 5, 6, 7, 8, 9]] def flatten(lists): results = [] for numbers in range(len(lists)): for i in range(len(lists[numbers])): results.append(numbers[i]) return results print flatten(n)
>>> def flatten(lists): ... result = [] ... for numbers in range(len(lists)): ... for item in range(len(lists[numbers])): ... result.append(lists[numbers][item]) ... return result ... >>> flatten(n) [1, 2, 3, 4, 5, 6, 7, 8, 9]
Mr.GeekmanА он тут нафиг не нужен
как сделать с range
n = [[1, 2, 3], [4, 5, 6, 7, 8, 9]] def flatten(lists): result = [] for numbers in lists: for item in numbers: result.append(item) return result print (flatten(n))
from functools import reduce from operator import add n = [[1, 2, 3], [4, 5, 6, 7, 8, 9]] def flatten(lists): return reduce(add, lists) print (flatten(n))
from itertools import chain n = [[1, 2, 3], [4, 5, 6, 7, 8, 9]] def flatten(lists): return list(chain(*lists)) print (flatten(n))
>>> def flatten(lists): ... return sum(lists, []) ... >>> n = [[1, 2, 3], [4, 5, 6, 7, 8, 9]] >>> flatten(n) [1, 2, 3, 4, 5, 6, 7, 8, 9] >>>