我有一个包含N个元素的列表,我希望使用特定步长(比如3),对它进行切片:
slice0 = text[0::3]
slice1 = text[1::3]
slice2 = text[2::3]
在分别进行一些处理后,我现在需要将它们合并到与原始列表中相同的位置。是否有类似(简单)的方法来做到这一点?
例子:
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.from_iterable
代替chain(*...)
(在Python 3.x中,zip
是生成器时会很有用)。 - ovgolovin