Heim >Backend-Entwicklung >Python-Tutorial >Wie kann man die Häufigkeit von Elementen in Python effizient zählen: Verwenden der Counter-Klasse?

Wie kann man die Häufigkeit von Elementen in Python effizient zählen: Verwenden der Counter-Klasse?

Patricia Arquette
Patricia ArquetteOriginal
2024-10-29 21:47:29624Durchsuche

How to Efficiently Count Item Frequencies in Python: Using the Counter Class?

Elementhäufigkeitszählung in Python: Ein effizienterer Ansatz

Problem:

Ermitteln der Häufigkeit des Vorkommens jedes Elements in einer Liste von Wörtern ist eine häufige Aufgabe in der Textverarbeitung. Ein unkomplizierter Ansatz besteht darin, eine Reihe eindeutiger Wörter zu erstellen und dann deren Vorkommen in der Liste zu zählen. Diese Methode ist jedoch ineffizient, da sie die Liste zweimal durchläuft.

Effizientere und pythonische Lösung:

Um die Effizienz zu verbessern, bietet Python die Klasse „collections.Counter“ an. speziell zum Zählen von Artikeln in einer Sammlung entwickelt.

Code:

<code class="python">from collections import Counter
words = "apple banana apple strawberry banana lemon"
print(Counter(words.split()))</code>

Ausgabe:

Counter({'apple': 2, 'banana': 2, 'strawberry': 1, 'lemon': 1})

Vorteile:

  • Die Counter-Klasse vereinfacht den Zählvorgang und erfordert nur eine Iteration über die Daten.
  • Sie verfolgt automatisch die Anzahl für jedes einzelne Element und macht es so einfacher Zugriff auf die Frequenzen.
  • Im Gegensatz zum vorherigen Ansatz kann die Counter-Klasse auch Zählelemente in komplexeren Datenstrukturen wie Wörterbüchern verarbeiten.

Das obige ist der detaillierte Inhalt vonWie kann man die Häufigkeit von Elementen in Python effizient zählen: Verwenden der Counter-Klasse?. 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