zip expects several iterations, so if you pass a single list of lists as a parameter, sublisters simply wrap themselves in tuples with one each element.
You must use * to unzip the list when you pass it to zip . This way you are actually passing two lists instead of a single list of lists:
>>> a = [[1,2], [3,4]] >>> zip(*a) [(1, 3), (2, 4)]
source share