Heim > Backend-Entwicklung > Python-Tutorial > Wie können Sie ein Wörterbuch basierend auf einer benutzerdefinierten Bedingung effizient bereinigen?

Wie können Sie ein Wörterbuch basierend auf einer benutzerdefinierten Bedingung effizient bereinigen?

Linda Hamilton
Freigeben: 2024-11-15 01:29:02
Original
573 Leute haben es durchsucht

How can you efficiently prune a dictionary based on a custom condition?

Beschneiden eines Wörterbuchs basierend auf einer benutzerdefinierten Bedingung

Bei der Arbeit mit Wörterbüchern ist es oft nützlich, deren Inhalte anhand bestimmter Kriterien zu verfeinern. Angenommen, Sie haben ein Wörterbuch mit Punkten, die als Tupel dargestellt werden, und möchten nur Punkte extrahieren, bei denen sowohl die x- als auch die y-Koordinaten kleiner als 5 sind.

Traditionell besteht ein Ansatz darin, die Wörterbuchelemente mit a zu iterieren Listenverständnis:

points_small = {}
for item in [i for i in points.items() if i[1][0] < 5 and i[1][1] < 5]:
    points_small[item[0]] = item[1]
Nach dem Login kopieren

Während diese Methode funktionsfähig ist, gibt es eine prägnantere Lösung mit einem Wörterbuch Verständnis:

points_small = {k: v for k, v in points.items() if v[0] < 5 and v[1] < 5}
Nach dem Login kopieren

Dieser prägnante Ausdruck generiert ein neues Wörterbuch, in dem Schlüssel und Werte die angegebene Bedingung erfüllen. In ähnlicher Weise kann in Python 2.7 und höher die folgende Syntax verwendet werden:

points_small = {k: v for k, v in points.iteritems() if v[0] < 5 and v[1] < 5}
Nach dem Login kopieren

Durch den Einsatz von Wörterbuchverständnissen erhalten Sie eine elegante und effiziente Möglichkeit, Wörterbücher auf der Grundlage willkürlicher Bedingungen zu filtern, was einen optimierteren Ansatz ermöglicht Datenmanipulation.

Das obige ist der detaillierte Inhalt vonWie können Sie ein Wörterbuch basierend auf einer benutzerdefinierten Bedingung effizient bereinigen?. 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