У меня есть список с N элементов, и я его фрагмент, используя определенный шаг, скажем, 3:Объединить нарезанных списки
slice0 = text[0::3]
slice1 = text[1::3]
slice2 = text[2::3]
После выполнения некоторой обработки separatedly, теперь мне нужно, чтобы объединить их обратно в те же позиции, что и в первоначальном списке. Есть ли аналогичный (простой) способ сделать это?
Пример:
L = [1,2,3,4,5,6] -> L0 = [1,4], L1 = [2,5], L2 = [3,6]
Тогда некоторая обработка (скажем, умножить каждый список на 1, 2 и 3 соответственно:
L0 = [1,4], L1 = [4,10], L2 = [9,18]
Объединение их обратно в их первоначальное положение
L = [1,4,9,4,10,18]
Спасибо.
Вместо 'chain (* ...)', [chain.from_iterable] (http://docs.python.org/library/itertools.html#itertools.chain.from_iterable) может использоваться (это будет может быть полезен для Python 3.x, где 'zip' является генератором). – ovgolovin
@ovgolovin: Конечно, это позволяет избежать преобразования в кортеж. –