zip
function accepts multiple iterables as its arguments, so you simply have to unpack the values from the returned tuple with *
(splat operator):
y = zip(*ars())
With zip(([1], [2]))
only one iterable is submitted (that tuple).
In zip(*([1], [2]))
you unpack 2 lists from tuple, so zip
receives 2 iterables.