Erhalt der Länge der Liste als Wert in dictionary in Python 2.7
Ich habe zwei Listen-und dictionary wie folgt:
>>> var1=[1,2,3,4]
>>> var2=[5,6,7]
>>> dict={1:var1,2:var2}
Ich möchte finde ich die Größe des veränderlichen Elements aus meinem Wörterbuch D. H. die Länge des Werts für einen Schlüssel.
Nach dem Blick in die help('dict')
konnte ich nur das finden der Funktion geben Sie die Anzahl der Tasten, d.h. dict.__len__()
.
Ich habe versucht, die Java-Methode(in der Hoffnung, dass es funktionieren könnte), also len(dict.items()[0])
aber es ausgewertet 2
.
Ich beabsichtige, diese zu finden:
Länge des Werts für den ersten Schlüssel: 4
Länge der Wert für den zweiten Schlüssel: 3
wenn die Listen sind ein Teil des Wörterbuch-und nicht als einzelne Listen in den Fall, Ihre Länge ist len(list)
.
Anregungen wird eine große Hilfe sein.
Du musst angemeldet sein, um einen Kommentar abzugeben.
dict.items()
ist eine Liste, die alle Schlüssel/Wert-Tupeln des Wörterbuchs, z.B.:Also, wenn Sie schreiben
len(dict.items()[0])
, dann Fragen Sie um die Länge des ersten Tupel der Artikel-Liste. Da die Tupel der Wörterbücher sind immer 2-Tupel (Paare), erhalten Sie die Länge2
. Wenn Sie möchten, dass die Länge von einem Wert für einen bestimmten Schlüssel, dann schreiben:Aso: Versuchen Sie nicht, um die Namen der standard-Typen (wie
str
,dict
,set
etc.) als Variablen-Namen. Python beschwert sich nicht, aber es verbirgt das geben Sie Namen und möglicherweise ein unerwartetes Verhalten.Können Sie dies tun, indem eine dict-comprehension, zum Beispiel:
Ihre "Java" Methode wäre auch fast gearbeitet haben, durch die Art und Weise (aber eher unpythonic). Sie nur mit den falschen index:
ans:-
oder
ans:-
[3, 4]
als Ausgang als auch( dicts haben keine spezielle Reihenfolge). Also, ist es besser, fügen Sie einige Erklärung, es könnte sonst verwirren die OP weiter.