Angenommen, ich habe eine Liste wie folgt aus:Splitting eine Liste in eine Liste von Blockindizes
myList=['A','B','C','D','E','F','G','H','I','J','K']
Also, nehme ich diese Liste als n-Chargen verarbeitet werden sollen. Wenn n = 3
, die Ich möchte eine Liste namens batchIdx
[(0,3),(4,7),(8,10)]
, wo jedes Tupel auf die (start,end)
Indizes von myList zeigt.
myList
könnte von variabler Länge sein. Dies ist nicht einfach eine Aufteilung der Liste in gleich große Stücke. Es ist wie mit divmod()
.
Bearbeiten: Ich möchte tatsächlich eine Liste erstellen, die in myList indiziert. Ich werde diese Indizes in einem anderen Teil meines Programms verwenden.
Was ist der beste Weg, dies zu implementieren?
Mögliche Duplikat [Wie kann man in gleichmäßig große Stücke in Python eine Liste verteilen?] (Http: // Stackoverflow. com/questions/312443/how-do-you-split-a-list-in-every-size-chunks-in-python) – styvane
Möchten Sie 'batchIdx' erstellen oder' batchIdx' verwenden, um zu indizieren 'MeineListe'? –
Sie wollen also: '[(0, 3), (3, 6), (6, 9), (9, 12)]' oder '[(0, 3), (3, 6), (6, 9), (9, 11)]? –