Mapping Wörterbuch Wert zur Liste
Angesichts der folgenden Wörterbuch:
dct = {'a':3, 'b':3,'c':5,'d':3}
Wie kann ich diese Werte in eine Liste wie:
lst = ['c', 'd', 'a', 'b', 'd']
um so etwas wie:
lstval = [5, 3, 3, 3, 3]
Kommentar zu dem Problem
Was passiert, wenn der Wert in der Liste ist nicht im Wörterbuch?
Sie wollen also diese Schlüssel in einer Liste(verwenden Sie die
- Liste(dict.keys())
), oder haben Sie die Liste schon? Und durch die Art und Weise, die nicht mit dict
als Namen einer Variablen. Möglich, Duplikat der Python dictionary: Holen Sie sich die Liste der Werte für die Liste der keys
Falls Sie sich Fragen, den Grund hinter all diesen unerklärlichen downvotes, deine Frage war mit von der meta: meta.stackoverflow.com/questions/308731/...
InformationsquelleAutor der Frage ulrich | 2015-10-12
Du musst angemeldet sein, um einen Kommentar abzugeben.
Mit
map
:Mit einem list comprehension:
InformationsquelleAutor der Antwort wim
Können Sie eine Liste Verständnis für diese:
Ich persönlich vorschlagen mit Liste Verstehens über eingebauten
map
weil es vertraut aussieht, um alle Python-Programmierer, ist einfacher zu analysieren und zu erweitern, im Falle eines benutzerdefinierten default-Wert ist erforderlich.InformationsquelleAutor der Antwort Sanjay T. Sharma
Können Sie Durchlaufen Schlüssel aus Ihrer Liste mit
map
Funktion:Oder wenn Sie es bevorzugen list comprehension:
InformationsquelleAutor der Antwort Eugene Soldatov
Nicht deinen Namen-Wörterbuch
dict
.dict
ist der name von dem Typ.InformationsquelleAutor der Antwort khelwood
Nicht mit einem
dict
als variable Namen, wie es gebaut wurde.InformationsquelleAutor der Antwort luoluo
Ich würde das verwenden einer list-comprehension:
Den
.get(key, 0)
Teil zurück, ein default-Wert (in diesem Fall 0), wenn kein element mit diesem Schlüssel existiert indict
.InformationsquelleAutor der Antwort TobiMarg
In der Dokumentation von Python 3:
dict.items()
"Return eine neue Sicht auf das Wörterbuch-Artikel ((Schlüssel, Wert)Paare)" https://docs.python.org/3/library/stdtypes.html#dict.items
zip()
in Verbindung mit der * - operator kann verwendet werden, um Sie zu Dekomprimieren einesListe" https://docs.python.org/3/library/functions.html#zip
So,
zip(*d.items())
geben Sie Ihr Ergebnis.InformationsquelleAutor der Antwort OPi