Heim > Backend-Entwicklung > Python-Tutorial > Wie kann ich eine Liste in Python in gleich große Blöcke unterteilen?

Wie kann ich eine Liste in Python in gleich große Blöcke unterteilen?

Mary-Kate Olsen
Freigeben: 2024-12-24 04:33:17
Original
177 Leute haben es durchsucht

How Can I Divide a List into Equally-Sized Chunks in Python?

Gleich große Blöcke aus Listen beliebiger Länge

Das Aufteilen einer Liste in gleich große Segmente kann ein wertvoller Vorgang für die Datenverarbeitung sein. Dieser Artikel stellt eine kurze Anleitung zur Lösung dieser Aufgabe in Python dar.

Verwendung eines benutzerdefinierten Generators

Ein vielseitiger Ansatz besteht darin, einen Generator zu verwenden, der gleichmäßig große Blöcke liefert:

def chunks(lst, n):
    """Yield successive n-sized chunks from lst."""
    for i in range(0, len(lst), n):
        yield lst[i:i + n]
Nach dem Login kopieren

Um es zu demonstrieren Verwendung:

pprint.pprint(list(chunks(range(10, 75), 10)))
Nach dem Login kopieren

Ausgabe:

[[10, 11, 12, 13, 14, 15, 16, 17, 18, 19],
 [20, 21, 22, 23, 24, 25, 26, 27, 28, 29],
 [30, 31, 32, 33, 34, 35, 36, 37, 38, 39],
 [40, 41, 42, 43, 44, 45, 46, 47, 48, 49],
 [50, 51, 52, 53, 54, 55, 56, 57, 58, 59],
 [60, 61, 62, 63, 64, 65, 66, 67, 68, 69],
 [70, 71, 72, 73, 74]]
Nach dem Login kopieren

Variante des Listenverständnisses

Alternativ kann eine einzeilige Lösung mit Listenverständnis verwendet werden eingesetzt werden:

[lst[i:i + n] for i in range(0, len(lst), n)]
Nach dem Login kopieren

Für verbesserten Code wird jedoch die Verwendung benannter Funktionen empfohlen Lesbarkeit.

Das obige ist der detaillierte Inhalt vonWie kann ich eine Liste in Python in gleich große Blöcke unterteilen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage