Die beste Möglichkeit, die Wortliste in ein Frequenzdiktat zu verwandeln

8

Was ist der beste Weg, um eine Liste / ein Tupel in ein Diktat umzuwandeln, wo die Schlüssel die unterschiedlichen Werte der Liste sind und die Werte die Frequenzen dieser verschiedenen Werte sind?

Mit anderen Worten:

%Vor%

(Ich musste so oft wie oben beschrieben vorgehen. Gibt es etwas in der Standardbibliothek, das das für Sie tut?)

BEARBEITEN:

Jacob Gabrielson weist darauf hin, dass etwas hereinkommt die Standardbibliothek für den Zweig 2.7 / 3.1

    
ʞɔıu 06.04.2009, 18:55
quelle

6 Antworten

14

Art von

%Vor%

Das funktioniert normalerweise gut.

    
S.Lott 06.04.2009, 18:56
quelle
22

Ich finde, dass es am einfachsten zu verstehen ist (obwohl es möglicherweise nicht der effizienteste Weg ist):

%Vor%     
SilentGhost 06.04.2009 19:28
quelle
7

Nur ein Hinweis, dass ab Python 2.7 / 3.1 diese Funktionalität in das collections -Modul eingebaut wird, siehe diesen Fehler für weitere Informationen. Hier ist das Beispiel aus den Versionshinweisen :

%Vor%     
Jacob Gabrielson 07.04.2009 20:42
quelle
2

Das ist ein Greuel, aber:

%Vor%

Ich kann mir keinen Grund vorstellen, warum man diese Methode gegenüber S.Lott's wählt, aber wenn jemand darauf hinweist, könnte es auch ich sein. :)

    
Steven Huwig 06.04.2009 19:15
quelle
1

Ich muss eine interessante, aber lächerliche Art teilen, die ich gerade gemacht habe:

%Vor%     
ʞɔıu 06.04.2009 19:11
quelle
1

Ich entschied mich, die vorgeschlagenen Versionen zu testen. Ich fand die collections.Counter , wie von Jacob Gabrielson vorgeschlagen, die schnellste, gefolgt von der defaultdict -Version von SLott.

Hier sind meine Codes:     aus Sammlungen importieren defaultdict     aus Sammlungen importieren Counter

%Vor%

Und meine Ergebnisse:

%Vor%

Lassen Sie mich wissen, wie ich die Analyse verbessern kann.

    
user8338 10.02.2017 14:30
quelle

Tags und Links