Heim > Backend-Entwicklung > Python-Tutorial > Wie sortiere ich eine Liste von Objekten in absteigender Reihenfolge nach Attribut?

Wie sortiere ich eine Liste von Objekten in absteigender Reihenfolge nach Attribut?

Patricia Arquette
Freigeben: 2024-12-10 19:36:10
Original
363 Leute haben es durchsucht

How to Sort a List of Objects in Descending Order by Attribute?

So sortieren Sie eine Liste von Objekten basierend auf einem Attribut der Objekte

Das Sortieren von Listen komplexer Objekte, wie z. B. Python-Objekte, kann eine häufige Programmieraufgabe sein. Stellen Sie sich das folgende Szenario vor:

Problem:

Wie sortieren Sie eine gegebene Liste von Python-Objekten mit bestimmten Attributen basierend auf einem bestimmten Attribut in absteigender Reihenfolge?

Lösung:

So sortieren Sie eine Liste von Objekten basierend auf einem Attribut, z .count, verwenden Sie die Sortiermethode mit einer Lambda-Funktion als Schlüssel und setzen Sie „reverse“ auf „True“ für absteigende Reihenfolge.

Code:

Um die Liste an Ort und Stelle zu sortieren, verwenden Sie:

orig_list.sort(key=lambda x: x.count, reverse=True)
Nach dem Login kopieren

Um eine neue sortierte Liste zurückzugeben, verwenden:

new_list = sorted(orig_list, key=lambda x: x.count, reverse=True)
Nach dem Login kopieren

Erklärung:

  • key=lambda x: x.count gibt das Attribut .count als Sortierkriterium an.
  • reverse=True sortiert die Liste absteigend Reihenfolge.

Zusätzliche Informationen:

  • Die .sort-Methode sortiert die Liste an Ort und Stelle, während sorted eine neue sortierte Liste zurückgibt.
  • Lambda-Funktionen sind anonyme Funktionen, die als Schlüsselargumente in Sortierfunktionen verwendet werden können.
  • Siehe Dokumentation Weitere Informationen zum Sortieren nach Schlüsseln.

Das obige ist der detaillierte Inhalt vonWie sortiere ich eine Liste von Objekten in absteigender Reihenfolge nach Attribut?. 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