2009-12-09 25 views

Odpowiedz

19

Obiekty lambda są wyrażeniami, a nie wyrażeniami takimi jak del.

Jeśli masz używać mapę i lambda, a następnie:

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

Pętla for jest prawdopodobnie wyraźniejsze:

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

przyzwyczajenie, że po prostu dać mi listę „K1? pop zwraca wartość, która zostanie usunięta, wierzę. – webley

+0

Wygląda na to, że nie chcesz "mapy". Nie próbujesz obliczyć listy wartości z innej listy. Próbujesz działać na liście. Zamiast tego użyj pętli for. –

+0

I BTW, 'map' wyświetli listę usuniętych wartości, ale możesz zignorować wartość zwróconą przez' map' jeśli chcesz. –

Powiązane problemy