Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich eine Liste in Python in gleich große Blöcke unterteilen?
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]
Um es zu demonstrieren Verwendung:
pprint.pprint(list(chunks(range(10, 75), 10)))
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]]
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)]
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!