Wie sortiere ich eine Liste von Listen in absteigender und aufsteigender Reihenfolge?

Patricia Arquette
Freigeben: 2024-10-21 17:24:02
Original
434 Leute haben es durchsucht

How to Sort a List of Lists in Descending and Ascending Order?

Sortieren einer Liste von Listen in absteigender und aufsteigender Reihenfolge

Bei einer gegebenen Liste von Listen mit zwei Elementen besteht das Ziel darin, die Listen zu sortieren Zuerst in absteigender Reihenfolge basierend auf dem ersten Element und dann in aufsteigender Reihenfolge basierend auf dem zweiten Element.

Um dies zu erreichen, können wir die Methode sort() zusammen mit einer benutzerdefinierten Schlüsselfunktion verwenden. Hier ist eine Lösung:

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

Das Schlüsselargument der Methode sort() gibt eine Funktion an, die die Sortierreihenfolge bestimmt. In diesem Fall definieren wir eine Lambda-Funktion, die eine Liste k übernimmt und ein Tupel zurückgibt. Das erste Element des Tupels ist das erste Element der Liste k[0], das für die absteigende Sortierung verwendet wird. Das zweite Element ist die Negation des zweiten Elements der Liste -k[1], die für die aufsteigende Sortierung verwendet wird.

Durch die Sortierung zuerst in absteigender Reihenfolge stellt reverse=True sicher, dass das erste Element jeder Liste ('a' oder 'b') wird in umgekehrter alphabetischer Reihenfolge sortiert. Anschließend ergibt sich durch die aufsteigende Sortierung des zweiten Elements eine Gesamtliste mit folgender Sortierung:

[['b', 1], ['b', 2], ['b', 3], ['a', 1], ['a', 2], ['a', 3]]
Nach dem Login kopieren

Damit wird effektiv das gewünschte Sortierkriterium erreicht.

Das obige ist der detaillierte Inhalt vonWie sortiere ich eine Liste von Listen in absteigender und aufsteigender 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
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!