1> lists:zip3([1,2,3,4],[a,b,c,d],[1,2,3,4]).
[{1,a,1},{2,b,2},{3,c,3},{4,d,4}]
2>
Или вы можете реализовать это вручную:
myzip3([], _, _) ->
[];
myzip3([X|Xs], [Y|Ys], [Z|Zs]) ->
[{X,Y,Z}|myzip3(Xs,Ys,Zs)].
Или используя аккумулятор:
myzip3acc(Xs, Ys, Zs) ->
myzip3acc_do([], Xs, Ys, Zs).
myzip3acc_do(Acc, [], _, _) ->
lists:reverse(Acc);
myzip3acc_do(Acc, [X|Xs], [Y|Ys], [Z|Zs]) ->
myzip3acc_do([{X,Y,Z}|Acc], Xs,Ys,Zs).