Heim >Backend-Entwicklung >Python-Tutorial >Wie finde ich das häufigste Element in einer Python-Liste, auch wenn es nicht hashbar ist?

Wie finde ich das häufigste Element in einer Python-Liste, auch wenn es nicht hashbar ist?

Linda Hamilton
Linda HamiltonOriginal
2024-12-02 12:12:14211Durchsuche

How to Find the Most Common Element in a Python List, Even If They're Not Hashable?

Das am häufigsten vorkommende Element in einer Python-Liste finden

In Python ist das Identifizieren des am häufigsten vorkommenden Elements in einer Liste eine häufige Programmieraufgabe . Allerdings wird es zu einer Herausforderung, wenn die Elemente nicht hashbar sind, was die Verwendung von Wörterbüchern verhindert.

Lösung

Eine effiziente Lösung besteht darin, die Max-Funktion mit einem benutzerdefinierten Schlüssel zu verwenden . Die Max-Funktion vergleicht normalerweise Elemente basierend auf ihren intrinsischen Eigenschaften. Wir können dieses Verhalten jedoch neu definieren, indem wir einen benutzerdefinierten Schlüssel bereitstellen, um den Vergleich basierend auf der Häufigkeit der Elemente zu erleichtern.

Hier ist eine kurze Implementierung in Python:

def most_common(lst):
    return max(set(lst), key=lst.count)

Diese Lösung erstellt zunächst einen Satz aus der Eingabeliste, der automatisch Duplikate eliminiert und gleichzeitig die Reihenfolge der Elemente beibehält. Anschließend wird die Max-Funktion auf diesen Satz angewendet, wobei die Methode lst.count als Schlüssel verwendet wird. Die Methode lst.count gibt die Anzahl der Vorkommen jedes Elements in der Originalliste zurück. Durch die Verwendung dieser Methode als Schlüssel ordnet die Max-Funktion die Elemente effektiv nach ihren Häufigkeiten.

Bei Gleichständen wählt die Max-Funktion das Element mit dem niedrigsten Index in der Originalliste aus. Dieses Verhalten stellt sicher, dass im gegebenen Beispiel most_common(['duck', 'duck', 'goose']) korrekt 'duck' zurückgibt.

Diese Lösung bietet eine einfache und effiziente Möglichkeit, das zu finden häufigstes Element in einer Python-Liste, auch wenn die Elemente nicht hashbar sind.

Das obige ist der detaillierte Inhalt vonWie finde ich das häufigste Element in einer Python-Liste, auch wenn es nicht hashbar ist?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
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