Wie kann man Wortvorkommen in einer Python-Liste effizient zählen?

DDD
Freigeben: 2024-10-30 17:02:26
Original
802 Leute haben es durchsucht

How to Efficiently Count Word Occurrences in a Python List?

Elementhäufigkeitszählung in Python

Wie zählt man effizient das Vorkommen jedes einzelnen Wortes in einer bestimmten Liste? Betrachten Sie den folgenden Code:

<code class="python">words = "apple banana apple strawberry banana lemon"
uniques = set(words.split())
freqs = [(item, words.split().count(item)) for item in uniques]
print(freqs)</code>
Nach dem Login kopieren

Obwohl diese Methode funktioniert, sind zwei Iterationen durch die Liste erforderlich, einmal zum Erstellen des eindeutigen Wortsatzes und noch einmal zum Zählen der Vorkommen. Können wir das optimieren?

Lösung: Verwendung der Counter-Klasse

Das Python-Sammlungsmodul stellt eine Counter-Klasse bereit, die speziell für diese Aufgabe entwickelt wurde. So können Sie es verwenden:

<code class="python">from collections import Counter
words = "apple banana apple strawberry banana lemon"
Counter(words.split())
# Output: Counter({'apple': 2, 'banana': 2, 'strawberry': 1, 'lemon': 1})</code>
Nach dem Login kopieren

Die Counter-Klasse zählt die Vorkommen jedes Elements in der bereitgestellten Iterable, was zu einem Wörterbuch führt, in dem Schlüssel eindeutige Elemente und Werte ihre Anzahl sind. Dieser Ansatz ist effizienter, da nur eine einzige Iteration durch die Eingabeliste erforderlich ist.

Das obige ist der detaillierte Inhalt vonWie kann man Wortvorkommen in einer Python-Liste effizient zählen?. 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
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!