Wie sortiere ich Listen mit gemischter Reihenfolge?

Linda Hamilton
Freigeben: 2024-10-21 16:33:29
Original
609 Leute haben es durchsucht

How to Sort Lists of Lists with Mixed Ordering?

Sortieren von Listen mit gemischter Reihenfolge

Bei einer Liste mit Listen mit zwei Elementen kann das Sortieren in einer bestimmten Reihenfolge eine Herausforderung sein. Typischerweise erfolgt die Sortierung anhand eines Kriteriums. In diesem Fall müssen wir jedoch basierend auf dem ersten Element in absteigender Reihenfolge und dem zweiten Element in aufsteigender Reihenfolge sortieren.

Um diese gemischte Sortierung zu erreichen, können wir Lambda-Funktionen und die Sortiermethode in Python verwenden. Das Schlüsselargument der Sortiermethode übernimmt eine Funktion, die die Sortierreihenfolge bestimmt. Die von uns bereitgestellte Funktion berücksichtigt beide Elemente jeder Liste.

Um einen kombinierten Schlüssel zu erstellen, der beide Elemente verarbeitet, können wir die folgende Lambda-Funktion verwenden:

<code class="python">lambda k: (k[0], -k[1])</code>
Nach dem Login kopieren

Hier sind wir Verwenden eines Tupels, um beide Elemente zu kombinieren. Das erste Element stellt das erste Element der Liste dar und das zweite Element ist das Negativ des zweiten Elements. Diese Negation stellt die absteigende Reihenfolge für das zweite Element sicher.

Jetzt können wir diese Lambda-Funktion in der Sortiermethode verwenden:

<code class="python">L.sort(key=lambda k: (k[0], -k[1]), reverse=True)</code>
Nach dem Login kopieren

Das Argument „reverse=True“ gibt an, dass die Sortierung durchgeführt werden soll in umgekehrter Reihenfolge, was unserer Anforderung einer absteigenden Reihenfolge für das erste Element entspricht.

Als Ergebnis wird die Liste L so sortiert, dass das erste Element absteigend und das zweite Element aufsteigend sortiert wird:

<code class="python">[['b', 1], ['b', 2], ['b', 3], ['a', 1], ['a', 2], ['a', 3]]</code>
Nach dem Login kopieren

Das obige ist der detaillierte Inhalt vonWie sortiere ich Listen mit gemischter Reihenfolge?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

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