📜  将列表转换为每 n 个元素上的列表列表 python - TypeScript (1)

📅  最后修改于: 2023-12-03 14:53:48.124000             🧑  作者: Mango

将列表转换为每 n 个元素上的列表列表

在 Python 和 TypeScript 中,有时候我们需要将一个列表拆分为多个包含 n 个元素的子列表。本文将介绍如何实现这个功能,同时提供 Python 和 TypeScript 的代码示例。

Python 示例

下面是一个将列表转换为每 n 个元素上的列表列表的 Python 函数示例:

def chunk_list(lst, n):
    """
    将列表拆分为每 n 个元素上的列表列表
    
    Args:
        lst (List): 要拆分的列表
        n (int): 每个子列表的元素个数
        
    Returns:
        List[List]: 每 n 个元素上的列表列表
    """
    return [lst[i:i+n] for i in range(0, len(lst), n)]

使用示例:

my_list = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
result = chunk_list(my_list, 3)
print(result)
# 输出: [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]]
TypeScript 示例

下面是一个将数组转换为每 n 个元素上的数组数组的 TypeScript 函数示例:

function chunkArray<T>(arr: T[], n: number): T[][] {
    /**
     * 将数组拆分为每 n 个元素上的数组数组
     * 
     * @param arr 要拆分的数组
     * @param n 每个子数组的元素个数
     * @returns 每 n 个元素上的数组数组
     */
    const chunkedArr: T[][] = [];
    let i = 0;

    while (i < arr.length) {
        chunkedArr.push(arr.slice(i, i + n));
        i += n;
    }

    return chunkedArr;
}

使用示例:

const myArray = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10];
const result = chunkArray(myArray, 3);
console.log(result);
// 输出: [[1, 2, 3], [4, 5, 6], [7, 8, 9], [10]]

以上是将列表转换为每 n 个元素上的列表列表的 Python 和 TypeScript 示例。根据你的需求,选择适合你项目的语言来实现这个功能。希望这篇介绍对你有帮助!