Python >> Python opplæring >  >> Python

Del listen i n biter

Deler en liste inn i n mindre lister.

  • Bruk math.ceil() og len() for å få størrelsen på hver del.
  • Bruk list() og range() for å lage en ny liste med størrelse n .
  • Bruk map() å tilordne hvert element i den nye listen til en del av lengden size .
  • Hvis den opprinnelige listen ikke kan deles jevnt, vil den siste delen inneholde de gjenværende elementene.
from math import ceil

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

Forrige innlegg