Heim > Backend-Entwicklung > Python-Tutorial > Wie teilt man eine Liste in nahezu gleiche Teile auf?

Wie teilt man eine Liste in nahezu gleiche Teile auf?

Patricia Arquette
Freigeben: 2024-11-13 04:24:02
Original
987 Leute haben es durchsucht

How to Split a List into Nearly Equal Parts?

Aufteilen einer Liste in gleiche Teile

Wenn Sie mit einer Liste von Elementen arbeiten, kann es notwendig sein, diese in kleinere, ungefähr gleiche Teile aufzuteilen Teile. Dies kann besonders für Aufgaben wie Datenverarbeitung, paralleles Rechnen oder verteilte Algorithmen nützlich sein. Hier ist eine Untersuchung einer Methode, um eine Liste effektiv in n Teile zu unterteilen.

Lösung:

Um eine nahezu gleichmäßige Aufteilung einer Liste in n Teile zu erreichen, gehen Sie wie folgt vor Schritte können unternommen werden:

  1. Berechnen Sie den Quotienten k und den Rest m, indem Sie die Länge der Liste durch dividieren n: k, m = divmod(len(a), n).
  2. Verwenden Sie einen Listengenerator, um die aufgeteilten Teile zu erhalten: (a[i*k min(i, m):(i 1)* k min(i 1, m)] für i im Bereich(n)).

Dieser Ansatz stellt sicher, dass die Teile nahezu gleichmäßig aufgeteilt sind, wobei die ersten m Teile ein zusätzliches Element enthalten als die übrigen n-m Teile.

Beispiel:

Um die Wirksamkeit dieser Methode zu veranschaulichen, betrachten Sie eine Liste mit 11 ganzen Zahlen: range(11). Das Teilen dieser Liste in drei Teile mithilfe der Split-Funktion führt zu folgendem Ergebnis:

>>> list(split(range(11), 3))

[[0, 1, 2, 3], [4, 5, 6, 7], [8, 9, 10]]
Nach dem Login kopieren

Wie zu beobachten ist, ist die Liste in drei Teile mit ungefähr gleicher Größe unterteilt, wobei der erste Teil vier Elemente enthält und der weitere zwei Teile mit jeweils drei Elementen.

Das obige ist der detaillierte Inhalt vonWie teilt man eine Liste in nahezu gleiche Teile auf?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
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