Diviser une liste en morceaux plus petits

Beginner

This tutorial is from open-source community. Access the source code

Introduction

En Python, nous avons souvent besoin de diviser une liste en listes plus petites d'une taille spécifiée. Cela peut être utile à diverses fins, comme le traitement des données par lots ou l'affichage des données sous forme paginée. Dans ce défi, vous devrez écrire une fonction qui peut diviser une liste en listes plus petites d'une taille spécifiée.

Diviser une liste en morceaux

Écrivez une fonction chunk(lst, size) qui prend une liste lst et un entier positif size en arguments et renvoie une liste de listes plus petites, dont chacune a une taille maximale de size. Si la longueur de lst n'est pas divisible uniformément par size, la dernière liste de la liste renvoyée devrait contenir les éléments restants.

from math import ceil

def chunk(lst, size):
  return list(
    map(lambda x: lst[x * size:x * size + size],
      list(range(ceil(len(lst) / size)))))
chunk([1, 2, 3, 4, 5], 2) ## [[1, 2], [3, 4], [5]]

Sommaire

Dans ce défi, vous avez appris à diviser une liste en listes plus petites d'une taille spécifiée. Vous avez écrit une fonction qui prend une liste et un entier positif en arguments et renvoie une liste de listes plus petites, dont chacune a une taille maximale de l'entier donné. Cela peut être utile à diverses fins, comme le traitement des données par lots ou l'affichage des données sous forme paginée.