zwei Wörterbücher Gegeben, d1
und d2
, und eine ganze Zahl l
, möchte ich k
alle Schlüssel finden in d1
, so dass entweder d2[k]<l
oder k not in l
. Ich möchte die Schlüssel und die entsprechenden Werte in d2
ausgeben, außer wenn d2
den Schlüssel nicht enthalten, ich will 0. Zum Beispiel drucken, wenn d1
istVergleich Wörterbücher in Python
a: 1
b: 1
c: 1
d: 1
und d2
ist
a: 90
b: 89
x: 45
d: 90
l
und 90 ist, würde der Ausgang (möglicherweise in einer anderen Reihenfolge) seine
b 89
c 0
W Hut ist der beste Weg, dies in Python zu tun? Ich beginne gerade die Sprache zu lernen, und so weit das ist, was ich habe:
for k in d1.keys():
if k not in d2:
print k, 0
else:
if d2[k]<l:
print k, d2[k]
Dies funktioniert natürlich (es sei denn ich einen Tippfehler), aber es scheint mir, dass es wäre ein pythonic Weg es zu tun.
Im ersten Absatz meinst du "k nicht in d2" statt "k nicht in l"? –