首页 > 解决方案 > 如何将列表分成相等的部分?Python

问题描述

我有这样的列表List = ['4', '4', '1', '2', '3', '2', '4', '1'],我需要在列表中进行转换List = [["4","4"],['1','2'],['3','2'],['4','1']]

标签: pythonarrays

解决方案


itertools提供了一个配方,可以将一个可迭代对象拆分为固定大小的块:

def grouper(iterable, n, fillvalue=None):
    "Collect data into fixed-length chunks or blocks"
    # grouper('ABCDEFG', 3, 'x') --> ABC DEF Gxx"
    args = [iter(iterable)] * n
    return zip_longest(*args, fillvalue=fillvalue)

推荐阅读