Ich habe eine Liste von Wörtern in einem Wörterbuch mit dem Wert = die Wiederholung des Schlüsselworts, aber ich möchte nur eine Liste von verschiedenen Wörtern, also wollte ich die Anzahl der Schlüsselwörter zählen. Gibt es eine Möglichkeit, die Anzahl der Schlüsselwörter zu zählen, oder gibt es eine andere Möglichkeit, nach bestimmten Wörtern zu suchen?Zählen der Anzahl der Schlüsselwörter in einem Wörterbuch in Python
129
A
Antwort
229
len(yourdict.keys())
oder nur
len(yourdict)
Wenn Sie eindeutige Wörter in der Datei zählen möchten, können Sie einfach set
nutzen und tun wie
len(set(open(yourdictfile).read().split()))
15
Die Anzahl einzelner Wörter (z. B. Anzahl der Einträge im Wörterbuch) kann mit der Funktion len()
gefunden werden.
> a = {'foo':42, 'bar':69}
> len(a)
2
Um alle unterschiedliche Wörter (das heißt die Tasten), verwenden Sie die .keys()
Methode.
> list(a.keys())
['foo', 'bar']
+0
sehr schön übergeben. Vielen Dank für die Hilfe! – Dan
0
Wenn die Frage nach ist Zählen der Anzahl der Schlüsselwörter würde dann etwas wie
empfehlendef countoccurrences(store, value):
try:
store[value] = store[value] + 1
except KeyError as e:
store[value] = 1
return
in der Hauptfunktion haben, etwas, das die Datenschleifen durch und um die Werte in Funktion countoccurrences
if __name__ == "__main__":
store = {}
list = ('a', 'a', 'b', 'c', 'c')
for data in list:
countoccurrences(store, data)
for k, v in store.iteritems():
print "Key " + k + " has occurred " + str(v) + " times"
Die Codeausgänge
Key a has occurred 2 times
Key c has occurred 2 times
Key b has occurred 1 times
Ich weiß, dass dieser Beitrag alt ist, aber ich war neugierig. Ist das die schnellste Methode? Oder: Ist es eine * ziemlich schnelle Methode für große Wörterbücher? – theJollySin
Sowohl '' 'len (yourdict.keys())' '' und '' 'len (yourdict)' '' sind O (1). Letzteres ist etwas schneller. Siehe meine Tests unten. –
Ich möchte darauf hinweisen, dass Sie auch für die Werte (ich weiß, dass die Frage nicht gefragt hat) mit 'len (yourdict.values ())' gehen – ntk4