Es wäre bequemer, wenn ein defaultdict
defaultdict Ein-Schritt-Initialisierung
d = defaultdict(list, (('a', 1), ('b', 2), ('c', 3), ('d', 4), ('a', 2),
('b', 3)))
zu produzieren
defaultdict(<type 'list'>, {'a': [1, 2], 'c': [3], 'b': [2, 3], 'd': [4]})
Stattdessen bekomme ich
defaultdict(<type 'list'>, {'a': 2, 'c': 3, 'b': 3, 'd': 4})
zu bekomme, was ich brauche, muss ich das tun:
d = defaultdict(list)
for x, y in (('a', 1), ('b', 2), ('c', 3), ('d', 4), ('a', 2), ('b', 3)):
d[x].append(y)
Das ist IMO ein Schritt mehr als nötig sein sollte, fehlt mir hier etwas?
Wie würde es wissen, Append auf der Liste zu verwenden? Und was ist mit anderen Arten? –
@ JonClements, guter Punkt. Man könnte jedoch denken, dass "Liste" ein häufig genug verwendeter Fall ist, dass eine Bequemlichkeitsmethode (vielleicht eine Klassenmethode) gerechtfertigt ist? – iruvar
Wäre diese Bequemlichkeitsmethode nicht genau das, was Sie gerade am Ende Ihres Posts geschrieben haben? Warum nicht diese drei Zeilen in eine Funktion einpacken und es einen Tag nennen? –