2012-11-29 33 views

Odpowiedz

213
lst1, lst2 = zip(*zipped_list) 

powinien dać ci rozpakowaną listę.

rozpakowuje obiekt zipped_list. Następnie przechodzi wszystkie krotki z zipped_list obiektu do zip, który właśnie pakuje je z powrotem jak były, gdy przekazał je w

więc jeżeli:.

a = [1,2,3] 
b = [4,5,6] 

następnie zipped_list = zip(a,b) daje:

[(1,4), (2,5), (3,6)] 

i *zipped_list daje powrotem

(1,4), (2,5), (3,6) 

skompresowany, że z zip(*zipped_list) oddaje z powrotem dwie kolekcje:

[(1, 2, 3), (4, 5, 6)] 
+7

Wow, to wygląda naprawdę fajnie. – Merlin

+7

Innymi słowy "lambda x: zip (* x)" jest samozwańczą. – jwg