2009-12-09 6 views

Antwort

19

Lambda-Körper sind nur Ausdrücke, keine Aussagen wie del.

Wenn Sie haben Karte und Lambda zu verwenden, dann:

map(lambda d: d.pop('k1'), list_of_d) 

Eine for-Schleife ist wahrscheinlich deutlicher:

for d in list_of_d: 
    del d['k1'] 
+1

gewohnt, dass mir nur eine Liste geben von ‚k1 ist? pop gibt den Wert zurück, der entfernt wird, glaube ich. – webley

+0

Es klingt, als ob Sie nicht wirklich 'map' wollen. Sie versuchen nicht, eine Liste von Werten aus einer anderen Liste zu berechnen. Sie versuchen, auf einer Liste zu agieren. Verwenden Sie stattdessen die for-Schleife. –

+0

Und BTW, 'map' wird die Liste der gelöschten Werte erzeugen, aber Sie können den von' map' zurückgegebenen Wert ignorieren, wenn Sie möchten. –

Verwandte Themen