


Wie kann man Elementhäufigkeiten in einer ungeordneten Python-Liste effizient zählen?
Ermitteln der Häufigkeit von Elementen in einer ungeordneten Liste
Betrachten Sie eine ungeordnete Liste wie a = [5, 1, 2, 2, 4, 3, 1, 2, 3, 1, 1, 5, 2]. Das Ziel besteht darin, die Häufigkeit jedes einzelnen Werts innerhalb der Liste zu bestimmen. Die gewünschte Ausgabe ähnelt b = [4, 4, 2, 1, 2], was bedeutet, dass der Wert 1 viermal erscheint, 2 viermal erscheint, 3 zweimal erscheint, 4 einmal erscheint und 5 zweimal erscheint.
In Python ist die Verwendung der Collections.Counter-Klasse eine praktische Lösung für diese Aufgabe. In Python 2.7 und höher vereinfacht diese Klasse den Prozess des Zählens des Vorkommens von Elementen in einer ungeordneten Sammlung:
import collections a = [5, 1, 2, 2, 4, 3, 1, 2, 3, 1, 1, 5, 2] counter = collections.Counter(a)
Das Objekt „collections.Counter“, Zähler, speichert die Anzahl jedes eindeutigen Werts in der Liste a . Sie können mit verschiedenen Methoden auf die Anzahl zugreifen:
- counter.values(): Gibt eine Liste zurück, die die Anzahl der einzelnen eindeutigen Werte enthält.
- counter.keys(): Gibt eine Liste zurück enthält die eindeutigen Werte in der Liste.
- counter.most_common(n): Gibt eine Liste von Tupeln zurück, die die n am häufigsten vorkommenden Werte und deren Werte enthalten zählt.
- dict(counter): Konvertiert das Counter-Objekt in ein reguläres Wörterbuch mit Schlüsseln als eindeutigen Werten und Werten als ihre Anzahlen.
Um die Anzahlen in der in angegebenen Reihenfolge zu erhalten Um die Frage zu beantworten, können Sie die Schlüssel in sortierter Reihenfolge durchlaufen:
[counter[x] for x in sorted(counter.keys())]
Wenn Sie Python 2.6 oder früher verwenden, können Sie eine Implementierung von herunterladen collections.Counter über den bereitgestellten Link und verwenden Sie ihn in Ihrem Code.
Das obige ist der detaillierte Inhalt vonWie kann man Elementhäufigkeiten in einer ungeordneten Python-Liste effizient zählen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

In dem Artikel wird die in Version 3.10 eingeführte "Match" -serklärung von Python erörtert, die als Äquivalent zum Wechseln von Aussagen in anderen Sprachen dient. Es verbessert die Code-Lesbarkeit und bietet Leistungsvorteile gegenüber herkömmlichen IF-ELIF-EL

Ausnahmegruppen in Python 3.11 ermöglichen die gleichzeitige Behandlung mehrerer Ausnahmen, wodurch die Fehlermanagement in gleichzeitigen Szenarien und komplexen Vorgängen verbessert wird.

Funktionsanmerkungen in Python Fügen Sie Metadaten zu Funktionen für Typprüfungen, Dokumentation und IDE -Unterstützung hinzu. Sie verbessern die Lesbarkeit, die Wartung der Code und die API -Entwicklung, die Datenwissenschaft und die Erstellung der Bibliothek von entscheidender Bedeutung.

In dem Artikel werden Unit -Tests in Python, deren Vorteile und wie man sie effektiv schreibt, erläutert. Es zeigt Werkzeuge wie Unittest und PyTest zum Testen.

In Artikel werden Zugriffsspezifizierer in Python erörtert, die benennende Konventionen verwenden, um die Sichtbarkeit von Klassenmitgliedern und nicht die strenge Durchsetzung anzuzeigen.

In Artikel wird die Methode von Python \ _ \ _ init \ _ \ _ () und die Rolle von Self bei der Initialisierung von Objektattributen erörtert. Andere Klassenmethoden und die Auswirkungen der Vererbung auf \ _ \ _ init \ _ \ _ () sind ebenfalls abgedeckt.

In dem Artikel werden die Unterschiede zwischen @ClassMethod, @StaticMethod und Instance -Methoden in Python erörtert und ihre Eigenschaften, Anwendungsfälle und Vorteile beschrieben. Es wird erläutert, wie Sie den richtigen Methodentyp basierend auf der erforderlichen Funktionalität und DA auswählen

Inpython, youAppendElementStoAlistusedtheAppend () Methode.1) UseAppend () ForsingleElelements: my_list.append (4) .2) usextend () oder = formulnElements: my_list.extend (andere_list) ormy_list = [4,5,6] .3) useInSert () FORSPECIFIFICISPositionen: my_list.insert (1,5) .Beaware


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

EditPlus chinesische Crack-Version
Geringe Größe, Syntaxhervorhebung, unterstützt keine Code-Eingabeaufforderungsfunktion

MinGW – Minimalistisches GNU für Windows
Dieses Projekt wird derzeit auf osdn.net/projects/mingw migriert. Sie können uns dort weiterhin folgen. MinGW: Eine native Windows-Portierung der GNU Compiler Collection (GCC), frei verteilbare Importbibliotheken und Header-Dateien zum Erstellen nativer Windows-Anwendungen, einschließlich Erweiterungen der MSVC-Laufzeit zur Unterstützung der C99-Funktionalität. Die gesamte MinGW-Software kann auf 64-Bit-Windows-Plattformen ausgeführt werden.

DVWA
Damn Vulnerable Web App (DVWA) ist eine PHP/MySQL-Webanwendung, die sehr anfällig ist. Seine Hauptziele bestehen darin, Sicherheitsexperten dabei zu helfen, ihre Fähigkeiten und Tools in einem rechtlichen Umfeld zu testen, Webentwicklern dabei zu helfen, den Prozess der Sicherung von Webanwendungen besser zu verstehen, und Lehrern/Schülern dabei zu helfen, in einer Unterrichtsumgebung Webanwendungen zu lehren/lernen Sicherheit. Das Ziel von DVWA besteht darin, einige der häufigsten Web-Schwachstellen über eine einfache und unkomplizierte Benutzeroberfläche mit unterschiedlichen Schwierigkeitsgraden zu üben. Bitte beachten Sie, dass diese Software

MantisBT
Mantis ist ein einfach zu implementierendes webbasiertes Tool zur Fehlerverfolgung, das die Fehlerverfolgung von Produkten unterstützen soll. Es erfordert PHP, MySQL und einen Webserver. Schauen Sie sich unsere Demo- und Hosting-Services an.

SecLists
SecLists ist der ultimative Begleiter für Sicherheitstester. Dabei handelt es sich um eine Sammlung verschiedener Arten von Listen, die häufig bei Sicherheitsbewertungen verwendet werden, an einem Ort. SecLists trägt dazu bei, Sicherheitstests effizienter und produktiver zu gestalten, indem es bequem alle Listen bereitstellt, die ein Sicherheitstester benötigen könnte. Zu den Listentypen gehören Benutzernamen, Passwörter, URLs, Fuzzing-Payloads, Muster für vertrauliche Daten, Web-Shells und mehr. Der Tester kann dieses Repository einfach auf einen neuen Testcomputer übertragen und hat dann Zugriff auf alle Arten von Listen, die er benötigt.
