2016-09-22 3 views
-4

Ich habe eine dict Struktur so wie folgt aus:Wie füge ich zwei Diktate in Python zusammen?

a = {'1' : {}, '2' : {}} 

b = {'3' : 3, '4' : 4} 

ich folgendes Format haben wollen:

a = {'1' : { '3' : 3 }, '2' : { '4' : 4 } } 

Ich habe viele Male versucht, aber ich immer verloren gehen, könnte mir jemand helfen?

+1

Haben Sie versucht, dies zu googeln? – kkaosninja

+0

Ja, ich tue, aber nicht nützlich sein, können Sie mir einen Vorschlag geben? – fx0123

Antwort

0

Das funktioniert aber was ist der Anwendungsfall? Scheint so, als gäbe es wahrscheinlich eine elegantere Lösung.

a = {i:{j:k} for i,(j,k) in zip(a.keys(),b.items())} 
+0

[Lesen Sie die Dokumentation zu integrierten wie 'dict()'.] (Https: //docs.python. org/2/library/functions.html) Und klicken Sie auf das Häkchen, um eine Antwort zu akzeptieren! –

+0

Es funktioniert nicht, siehe @ Jal – fx0123

+0

Es löst das Problem, das Sie vorgestellt.Es ist einfach nicht eine gute Möglichkeit, diese Dinge im Allgemeinen zu tun. Deshalb habe ich nach dem Anwendungsfall gefragt! –

1
c = {i:{j:k} for i, (j, k) in zip(a.keys(), b.items())} 

>>> c 
{'2': {'3': 3}, '1': {'4': 4}} 

Es gibt keine Ordnung in einem Dictionnary ist, so dass Sie das nicht sicherstellen können, {3: 3} oder {4: 4} der Wert des Schlüssels ist, '1' oder „2'

Verwandte Themen