Ich habe eine Liste, die aussieht wie:
[('A', 1), ('B', 2), ('C', 3)]
Ich möchte daraus ein Wörterbuch machen, das so aussieht:
{'A': 1, 'B': 2, 'C': 3}
Was ist der beste Weg, um dies zu erreichen?
EDIT: Meine Liste der Tupel ist eigentlich eher wie:
[(A, 12937012397), (BERA, 2034927830), (CE, 2349057340)]
python
list
dictionary
Fred Wilson
quelle
quelle
A
sind dasB
(oderBERA
) undC
(oderCE
) wirklich? DankeAntworten:
DAS ist deine eigentliche Frage.
Die Antwort ist, dass die Elemente Ihrer Liste nicht so sind, wie Sie denken. Wenn Sie eingeben, werden
myList[0]
Sie feststellen, dass das erste Element Ihrer Liste kein Zwei-Tupel ist, z. B.('A', 1)
ein iterierbares Element von 1916.Sobald Sie tatsächlich eine Liste in der Form haben, die Sie in Ihrer ursprünglichen Frage (
myList = [('A',1),('B',2),...]
) angegeben haben, müssen Sie nur noch tundict(myList)
.quelle
[(1,2), (1,3)]
->{1:3}
würde deine Schlüssel verstopfen und Infos verlieren! Ein Diktat ist eine Eins-zu-*-Beziehung zur Einfüge- / Löschzeit von O (1). Liste ist eine Liste.quelle
l=[('A',1), ('B',2), ('C',3), ('A', 2)]
Führt dazu,'A': 1
dass möglicherweise nicht das gewünschte Ergebnis erzielt wird.Hast du das versucht?
quelle
dict([string1, string2, string3, string4])
l=[('A',1), ('B',2), ('C',3), ('A', 2)]
Führt dazu,'A': 1
dass möglicherweise nicht das gewünschte Ergebnis erzielt wird.Hier ist eine Möglichkeit, mit doppelten Tupel- "Schlüsseln" umzugehen:
quelle
Ein anderer Weg, Wörterbuchverständnisse zu verwenden,
quelle
Wenn Tuple keine Tastenwiederholungen hat, ist es einfach.
Wenn das Tupel Tastenwiederholungen hat.
quelle
quelle