合并清单项目python 3.6

时间:2019-01-30 16:37:15

标签: python python-3.6

Python列表包括多个项目的是同样由3

的分割

列表如下:

the_list = ['ab','cd','e','fgh','i', 'jklm']

我想在整个列表中同时合并3个项目。我应该怎么做? (列表中可以包含任意数量的项目,只要项目的数量可以除以3)

expected_output = ['abcde', 'fghijklm']

2 个答案:

答案 0 :(得分:2)

您可以在列表理解中以3的步长在列表长度上迭代索引时对列表进行切片:

[''.join(the_list[i:i + 3]) for i in range(0, len(the_list), 3)]

您还可以从列表中创建一个迭代器,并将zipitertools.repeat结合使用,以一次将3个项目分组:

from itertools import repeat
i = iter(the_list)
[''.join(t) for t in zip(*repeat(i, 3))]

以上两种返回方式:

['abcde', 'fghijklm']

答案 1 :(得分:0)

这是使用列表理解和range的一种方法:

output = [''.join(the_list[i:i+3]) for i in range(0, len(the_list), 3)]